如何在不指定程序路径的情况下运行自己的程序


11

假设我已经编译了一些东西,然后像这样运行它:

$ /path/to/my/executable/mycmd
Hello World

我需要做些什么才能像运行它

$ mycmd
Hello World 

从我计算机的任何地方?

Answers:


15

您正在寻找的是PATH环境变量。它告诉外壳程序,它在哪里需要寻找程序。您可以使用以下命令查看该变量的当前值echo

echo "$PATH"

现在...如果要使用某些新程序,最好的做法是使用程序包管理程序进行安装以进行分发。但是在这种情况下,我假设您正在处理的程序不是任何可用软件包都提供的。对于此类程序,您有两个选择:

  1. 安装程序的全系统,在您的系统没有一个地方把从包中安装任何文件。在大多数系统上,此类“安全”文件夹包括/usr/local/bin//opt/bin/-这些文件夹应该已经在您的中PATH。(查看这些文件夹,如果其中有很多文件,那么放置您自己的程序是错误的位置,您必须查看中列出的其他文件夹PATH。)
  2. 修改PATH变量。这不太安全,因为它定义了可以保存程序的其他文件夹,并且有人可能在您身上骗人,然后在其中放置自己的程序供您运行。

    您可以PATH使用以下方法临时修改变量:

    export PATH="$PATH:/path/to/your/executable"
    

    (请注意$PATH after =),或通过将以上行添加到.bashrc文件中来永久保留(假设您使用bash)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.