我在哪里可以找到文件系统中的应用程序可执行文件?

存储在Ubuntu中的程序的可执行文件在哪里?

应用程序(Komodo Edit)要求我识别要用作Web浏览器的应用程序。 我已经习惯于只输入应用程序名称作为这些情况的命令,但这个场景让我思考。

我知道在Windows中它只是’program files’文件夹中的相关应用程序文件夹,但我假设Linux上的情况有点不同?

我认为像bin这样的地方是合乎逻辑的,但这似乎是标准的Linux / Unix应用程序。 在哪里可以找到存储在我系统上的应用程序的二进制可执行文件

完整的答案是查看Filesystem Hierachy Standard文档,了解哪些内容在哪里。

但在您的情况下,如果您想知道特定可执行文件(例如firefox)的使用位置

 which firefox 

你会得到像这样的完整路径

 /usr/bin/firefox 

通过包管理器安装的应用程序通常会转到/usr/bin 。 您自己编译的应用程序将转至/usr/local/bin/除非您在编译时明确设置了不同的前缀。

通过在终端中键入which application_name可以找到特定应用程序所在的位置。 例如which firefox会打印/usr/bin/firefox (如果你使用的是Ubuntu软件包中的firefox)。

这类问题的一个好的CLI commad是:

 whereis  

或者当然是哪个(见下文)

如果您正在从包名称中查找可执行文件,也可以尝试此操作:

 dpkg -L firefox 

这将列出firefox拥有的所有文件。 要获取可执行文件,请将其传递给进一步处理

 dpkg -L firefox | while IFS=$'\n' read -r line; do [[ -x "${line#*:}" ]] && echo "$line" done