16.3. 启动应用程序

我安装了一个从互联网上下载的应用程序,一切似乎都正常,但在我键入它的名称后,却总是得到一个“command not found”消息。我知道我键入的名称是正确的,它为什么无法启动呢?

如果你想从 shell 提示下启动一个应用程序却不奏效,试着在应用程序的可执行名称前面添加一个 ./(譬如 /usr/local/bin/my-executable)。

假设你下载了 setiathome 客户应用程序,你想试用它,并且你遵循了安装软件的所有指令,在你的主目录中创建了一个叫做 seti/ 的子目录。现在,使用该可执行文件的完整路径来启动这个应用程序,如下所示:

/home/joe/seti/setiathome

你之所以要使用完整路径名来启动程序是由于,可执行文件没有被放置在你的用户 shell 环境所知的目录中(如 /usr/local/bin)。

你可以定制该设置,因此你便不必每次都键入应用程序的完整路径名。要达到这个目的,你必须编辑你的 PATH 变量。

16.3.1. 编辑你的 PATH

如果你需要频繁地启动位于 shell 搜索的路径之外的程序,你就得编辑你的用户 shell 配置文件来添加包含你想运行的文件的目录。你可以通过在你的 PATH 环境变量中添加该目录来达到这个目的。

小心小心
 

这里的说明仅仅是用于普通用户帐号的。请避免修改根用户的 .bash_profile 之类的文件,因为它会造成潜在的安全危险。

在 shell 提示下启动一个文本编辑器,如 geditvi。你可以键入下面的命令来打开叫做 .bash_profile 的文件:

gedit .bash_profile

你将会看到一条 PATH 声明,与下面的输出相似。

PATH=$PATH:$HOME/bin:/usr/local/bin:

在声明的结尾处,添加 $HOME/seti,如下所示:

PATH=$PATH:$HOME/bin:/usr/local/bin/:$HOME/seti:

保存文件并退出文本编辑器。

这时,你便可以键入下面的命令来使 .bash_profile 中的改变立即生效:

source .bash_profile

通过在你的 .bash_profile 文件中添加路径,你可以在这些路径中保存工具和程序而不必在命令前键入 ./ 来执行它。

窍门窍门
 

关于使用和配置 shell 提示的详细信息,请参阅第13章