我刚刚在我的 Linux 机器上安装了一个新程序(我们称之为 foo)。该程序的文件位于一个不寻常的位置,当前不属于我的$PATH. 如果我希望能够在任何目录中轻松地从终端运行该程序,那么更改我的 $PATH 变量或创建别名更好吗?有关系吗?
例如,别名方法将添加以下内容:alias foo="/path/to/program/foo.sh"
$PATH 方法为:export PATH=/path/to/program;$PATH
哪个更好?为什么?
“更好”是一个有点模糊的术语,但我建议将程序的目录添加到$PATH,因为(与别名不同)它将被 shell 的子进程继承。
例如,如果您从 shell 启动编辑器,然后想要从编辑器中运行 foo.sh,例如编译您正在编辑的文件或转换其文本,那么编辑器将知道在哪里可以找到 foo。嘘;如果您添加别名,则在从编辑器运行 foo.sh 时需要指定 foo.sh 的完整路径。
小智 5
还有第三种选择。创建从 $PATH 中的目录之一到该程序的链接。可以专门为此目的创建一个新目录(链接到非标准位置的程序)。这样,如果将来添加更多类似的程序,PATH 就不会被污染,而且 Aaron 也提到,在别名不可用的情况下,它不会依赖于别名。
| 归档时间: |
|
| 查看次数: |
5038 次 |
| 最近记录: |