
在 Linux 系统中,要查找可执行文件的路径其实非常简单。我们可以借助which
、whereis
、type
和command
这些命令,来快速定位可执行文件的具体位置。
在日常环境核查或故障排除时,尤其是在系统中存在多个版本,或在不同位置安装了同一应用程序时,明确可执行文件的路径就变得尤为重要。例如,如果你同时拥有系统全局版本和用户自定义安装版本,通过查看具体路径,可以避免程序调用报错或出现异常行为。
如果你经常自定义或修改 PATH 环境变量,以下 4 种方法能帮助你快速确认实际执行的程序位置,更高效地管理环境或定位问题。
方法 1:使用 which 命令
which
命令可以快速查找并显示某个可执行文件的具体路径。你可以一次指定一个或多个文件名,查看它们的存储位置。
which
默认会按照 PATH 环境变量中配置的目录顺序进行搜索,并返回第一个匹配到的可执行文件位置。- 如果你想查看所有同名可执行文件的位置,可以加上
-a
参数,列出全部匹配的路径。
基本用法如下:
which -a [文件名]
比如,要查找 Nginx 的可执行文件路径,可以执行以下命令:
which -a nginx
该命令会返回所有同名可执行文件的路径,方便你一目了然地了解 Nginx 的安装和分布情况。

方法 2:使用 whereis 命令
whereis
命令可以帮你在 Linux 中快速查找某个命令的二进制可执行文件、源代码文件,及其 Man page 位置。
执行whereis
命令时,它会扫描标准系统目录,并显示对应命令的可执行文件路径,及其相关联的 Man page 路径。基本用法如下:
whereis [参数] [文件名]
以 Nginx 为例,你可以通过以下命令查询它的相关路径:
whereis nginx
此外,whereis
也支持多种常用参数,可以实现不同的查找功能:
-b
仅查找二进制文件。-m
只查找 Man page。-B
指定二进制文件的查找路径。

方法 3:使用 type 命令
type
是 Linux Shell 的一个内置命令,主要用来判断某个命令的属性。例如,它可以告诉你指定的命令是 Alias(别名)、Shell 内建命令、函数,还是系统中的外部程序。
当然,也可以用它来查询可执行文件的具体路径。基本用法如下:
type [文件名]
默认情况下,type
只显示第一个匹配到的执行路径。如果你想看到所有路径,可以加上-a
参数。例如,查找 Nginx 的实际路径:
type -a nginx

方法 4:command 命令
command
也是 Linux Shell 的一个内建命令,可以判断某个命令是否存在于系统 PATH 中,并返回相关信息——命令是可执行文件、Shell 内建命令、别名,还是函数。
通过-v
参数,如果目标是一个外部可执行程序,就会直接显示它的完整路径:
command -v [文件名]
例如,要查找 Nginx 的可执行文件路径,可以使用以下命令:
command -v nginx

总的来说,which
、whereis
、type -a
和command -v
命令都能帮你快速定位目标路径。你可以根据自己的需求,选择最合适的方式,来快速获取可执行程序的实际位置。
最新评论
Microsoft.WindowsStore只有22507,没有22504,22507下载的时候找不到框架
经过测试,是可行的。感谢分享。
1.你贴的方法我没测试,如果有效,也只适用于个人或小规模使用,不具备普遍性。 2.根据微软最佳实践,是建立一个本地帐户专门用来远程连接。 3.在域环境中,不存在使用 Microsoft 帐户的情况。
关于rdp无法连接win11微软账户的问题 有很简单的解决办法 不需要退出微软账户或者重置之类的 在中文互联网搜索到的教程内容一般是使用MicrosoftAccount\邮箱作为用户名 密码填微软账户密码然后链接 但是这有个问题就是如果服务端(被控端)本身无缓存时将无法链接 改用英文在google搜索后发现了这样一篇微软社区问答 https://answers.microsoft.com/en-us/windows/forum/all/remote-desktop-not-working-with-microsoft-account/71f0c323-688a-4c97-8740-e80eb31ae11d 打开cmd终端后输入runas /u:MicrosoftAccount\你的邮箱 winver并回车 在出现类似输入MicrosoftAccount\xxx@xxx.com:的密码的文本时输入你的微软账户密码并回车(密码不会显示) 如果密码正确 稍后你将会看到一个Windows关于信息框 关掉它既可 这条命令的意思是 以xxx@xxx.com的身份运行winver程序 在完成后它即可以在本地生成关于该账户信息的缓存 接下来即可在客户端(控制端)输入对应地址链接 用户名为MicrosoftAccount\你的邮箱 密码为微软账户密码 如果一切顺利 在建立连接后 即可弹出证书验证框(如果以前从未链接此计算机) 确定即可 稍等即可进入远程桌面 对于伸手不看理论党的直白概括: 被控端: 打开运行框输入cmd回车 在cmd输入runas /u:MicrosoftAccount\你的邮箱 winver并回车 在出现新的文本时输入微软账户密码并回车(密码不会显示的) 关闭新弹出的窗口及cmd 控制端: 打开rdp客户端 输入计算机的地址回车 用户名:MicrosoftAccount\你的邮箱 密码:微软账户密码 回车后保存证书即可链接 您好,这是我转自B站的评论,不知道这个方法是否具有普遍性来辅助我们用同一个账号进行远程控制