什么是 Unix PATH 变量以及如何添加它?

什么是 Unix PATH 变量以及如何添加它?

许多编程教程要求用户添加一些内容PATH,但没有解释这是什么。现有的PATH向命令行新手解释的资源并不是很好。

  • 什么是 UnixPATH变量?

  • 我刚刚下载了一个程序,然后尝试在终端中运行命令并得到command not found。这与 有什么关系PATH

  • 我使用此命令添加了一些内容PATH,然后一切正常:

    export PATH=/path/to/some/bin:$PATH
    

    command not found...但是下次我启动电脑时又出现了这种情况。我怎样才能让它PATH每次打开终端时都保持打开状态?

  • 确定 Git 之类的程序是否gcc已加载到我的计算机上的最佳方法是什么?

答案1

UNIX 路径是一个环境变量,它是查找您要运行的程序的目录列表。它允许您避免使用完整的路径名来运行诸如/bin/ls(例如通过输入/bin路径)之类的东西。

例如,路径可能由以下部分组成:

/bin:/usr/bin:/usr/sbin

这意味着,当您输入命令时xyzzy,它将尝试运行从当前列表中找到的第一个文件:

/bin/xyzzy
/usr/bin/xyzzy
/usr/sbin/xyzzy

(它可能如果它很聪明的话,就跳过不可执行文件)。

您可以使用以下命令将内容添加到路径中:

set PATH=/directory/to/add:$PATH:/low/priority/path

它位于/directory/to/add路径搜索列表的开始和/low/priority/path结束处。

然而,这通常只会改变当前的shell。如果您想在每个 shell 中做出更改,则应将该行添加到您的启动文件之一,例如$HOME/.profile/etc/profile。要使用的正确文件取决于您的 shell 本身以及您如何设置启动文件。并不总是很容易知道它应该放在哪里,但规则通常在您使用的任何 shell 的手册页中都有说明。

您通常可以寻找路径中含有以下之一的命令:

which cmd
whence cmd

找到cmd可执行文件。例如,在我的 Debian 系统上,我得到以下记录:

pax> which ls
/bin/ls

pax> which firefox
/usr/bin/firefox

pax> which xyzzy

pax> 

答案2

什么是?

PATH 环境变量是一个以冒号分隔的目录列表,当您输入命令时,您的 Shell 会搜索这些目录。

如何設定?

PATH=$PATH:/your/directory
export PATH

每次打开终端时,如何让它停留在 PATH 上?

将前两行放入里面~/.bash_profile(如果您正在使用bash终端)。

答案3

PATH 是类 Unix 系统的环境变量。

设置路径:

export PATH=$PATH:<your path>

取消设置路径:

unset $PATH

永久设置路径

在您的主文件夹中,启用查看 --> 显示隐藏文件....在 .bash_profile 文件中,在导出 PATH 行之前,添加此行.....

PATH=$PATH:<yourpath>

注销并再次登录......检查它是否正常工作......好吧!它应该工作.....

相关内容