UNIX / Linux 使用 set 或 export 命令设置 PATH 变量
PATH 是一个环境变量。它是一个冒号分隔的目录列表,当您输入命令时,您的 shell 会搜索这些目录。在 Linux 和类 Unix 操作系统上,所有可执行文件都保存在不同的目录中。让我们看看如何在 Linux 或类 Unix 系统下使用 set 命令和export 命令设置 PATH 变量。
教程详细信息 | |
---|---|
难度等级 | 简单的 |
Root 权限 | 不 |
要求 | Linux 或 Unix 终端 |
类别 | Linux shell 脚本 |
操作系统兼容性 | AIX • Alma • Alpine • Arch • BSD • Debian • Fedora • FreeBSD • HP-UX • Linux • macOS • Mint • NetBSD • OpenBSD • openSUSE • Pop!_OS • RHEL • Rocky • Stream • SUSE • Ubuntu • Unix • WSL |
预计阅读时间 | 2 分钟 |
找出你当前的路径
要了解当前路径设置,请在 shell 提示符下键入以下命令。打开终端并键入 echo 命令或 printf 命令:
echo "$PATH"
或者
printf "%s\n" "$PATH"
示例输出:
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/usr/local/sbin/modemZapp:/Users/vivek/gcutil-1.8.4
如何在 Linux 或 Unix 下修改或设置 PATH 变量?
要修改路径,请根据您的 shell 编辑 $PATH 变量。在 UNIX / Linux 下设置路径的语法取决于您的登录 shell。
Bash、Sh、Ksh shell 语法修改 $PATH
如果您使用 bash、sh 或 ksh,请在 shell 提示符下输入:
## please note 'PATH' is CASE sensitivity and must be in UPPERCASE ## export PATH=$PATH:/path/to/dir1 export PATH=$PATH:/path/to/dir1:/path/to/dir2
或者
## please note 'PATH' is CASE sensitivity and must be in UPPERCASE ## PATH=$PATH:/path/to/dir1; export PATH
请随意将 /path/to/dir1 替换为您希望 shell 搜索的目录。您可以使用grep 命令或egrep 命令搜索 PATH,如下所示:
grep -i path ~/.profile egrep -i 'path|java_path' ~/.profile
修改 $PATH 的 Tcsh 或 csh shell 语法
如果你使用 tcsh 或者 csh,shell 输入:
## please note 'path' is case sensitivity and must be in lowercase ## set path = ($path /path/to/dir1) set path = ($path /path/to/dir1 /path/to/dir2)
或者
## please note 'PATH' is CASE sensitivity and must be in UPPERCASE ## setenv PATH $PATH:/path/to/dir1 setenv PATH $PATH:/path/to/dir1:/path/to/dir2
请随意将 /path/to/dir1 替换为您希望 shell 搜索的目录。
示例
在此示例中,将 /usr/local/bin 添加到 BASH/ksh/sh shell 下的路径中,输入:
export PATH=$PATH:/usr/local/bin
或者
PATH=$PATH:/usr/local/bin; export PATH
为了使这些更改永久生效,请将上面描述的命令添加到 sh 和 ksh shell 的 ~/.profile 文件末尾,或 bash shell 的 ~/.bash_profile 文件末尾:
## BASH SHELL ## echo 'export PATH=$PATH:/usr/local/bin' >> ~/.bash_profile
KSH/sh shell 用户尝试:
## KSH / SH SHELL ## echo 'PATH=$PATH:/usr/local/bin;export PATH' >> ~/.profile
在这个最后的例子中,将 /usr/local/bin/ 和 /scripts/admin/ 添加到 csh / tcsh shell 下的路径中,输入:
set path = ($path /usr/local/bin /scripts/admin)
或者
setenv PATH $PATH:/usr/local/bin:/scripts/admin
为了使这些更改永久生效,请将上面描述的命令添加到 ~/.cshrc 文件的末尾:
echo 'set path = ($path /usr/local/bin /scripts/admin)' >> ~/.cshrc
或者
echo 'setenv PATH $PATH:/usr/local/bin:/scripts/admin' >> ~/.cshrc
要验证新的路径设置,请输入:
$ echo "$PATH"
总结
我希望这可以帮助人们在 Unix 或 Linux 下设置 PATH 变量。有关更多信息,请使用 man 命令或 help 命令查看以下手册页:
$ man bash
$ man tcsh
$ man ksh
$ man csh