我想知道在哪里可以找到从 Ubuntu 软件中心安装的程序的程序文件的位置。
答案1
对于已安装的程序,系统范围的whereis
命令有助于
whereis vim
但我喜欢使用which
命令。
例如which vim
,如果您尝试在终端上运行 vim 命令,则显示将要使用的 vim 的位置。此外,whereis
如果命令位于您的主目录中,则命令不会显示命令的位置。例如。如果您的~/bin
目录中有命令pqr
whereis,则不会显示 的位置pqr
。which pqr
也会显示其位置。
如果您已经为命令设置了别名,例如如果您的终端理解命令c
的快捷方式clear
,则您可以通过键入以下命令来获取原始命令:
type c
它将输出:
c 是 clear 的别名
答案2
在终端尝试使用哪里
whereis <name of the program>
它将提供程序路径的位置。
例如
whereis apt
apt: /etc/apt /usr/lib/apt /usr/share/apt /usr/share/man/man8/apt.8.gz
答案3
除 Windows 外,在 Linux 系统上,应用程序(通常 - 有少数例外)不会尝试安装到“一个地方”(不存在C:\Program Files\AppName
保存几乎所有应用程序文件之类的事情)。
相反,有专门的地方用于放置可执行文件(从命令行或通过图形界面菜单调用的文件),另一个地方用于放置应用程序使用的库(因此多个应用程序可以共享同一个库并自动从其更新中获益)、配置文件、文档等等。
正如已经指出的那样,您可以使用命令which
来告诉您所使用的可执行文件,并且有whereis
命令。第三个有用的命令是locate
,它将列出系统中所有包含指定字符串的文件/path/to/filename
,以及强大的find
命令。
你可以通过阅读他们的手册页——例如man find
会告诉您如何使用该find
命令。
答案4
一般来说你不应该需要知道程序的位置,因为如果您需要从命令行运行它们,那么它们无论如何都会在您的路径上,如果您从 GUI 或另一个应用程序中运行它们,它们将由其安装脚本在那里设置。
但如果你好奇的话,大多数可执行文件都会被放入/usr/bin
(或者至少从那里会存在一个到可执行文件的符号链接。)
也有例外。有些系统相关的命令可以从 获得/bin
,有些系统相关的命令仅供超级用户访问(即与 sudo 一起使用)/sbin
。
该which
命令可用于准确找出应用程序的位置(如果您通过在命令行中键入其名称来运行它)。您可以像使用which <command>
where 命令替换您要键入的命令一样使用它。例如:
which apt-get
告诉你:/usr/bin/apt-get
。正如我上面所说,大多数可执行文件都放在/usr/bin
;)
如果你输入以下内容
ls /usr/bin -l
然后它会向您显示中的所有文件/usr/bin
。然后您会注意到其中一些实际上是指向其他地方的符号链接。
现在,/usr/bin
将仅包含可执行文件。其所有支持文件将位于不同位置(通常在 内/usr
)。例如,它所需的库文件将位于 中/usr/lib
,而它所需的非可执行数据文件将位于 中/usr/share
。它还可能将配置或状态信息存储在 中/var/lib
,或存储在用户的主目录中。