本文为你介绍为什么要设置PATH变量,及在Linux操作系统中设置$PATH变量的方法。如果将守护程序/服务安装到默认目录中,那么它将在任何位置执行,因为可执行文件位于“/usr/local/bin”中。如果将守护程序/服务安装到其他目录,则需要将路径添加到“.bash_profile”文件以在任何地方执行,你可以将路径添加到root或特定用户,如果要通过root执行,则应添加“/root/.bash_profile”文件的路径。我已经将mysql和zendserver安装到了不同的目录,所以现在我将这些目录添加到“.bas_profile”文件中以便在任何地方执行。
为什么要设置PATH变量?包括在Linux系统中设置$PATH变量
PATH变量是用于存储可执行路径的系统变量,如果将路径变量设置为守护程序,我们可以简单地键入该守护程序来执行它,否则我们需要键入精确/完整路径来执行该守护程序。
默认情况下,以下路径被添加到可执行路径/位置,使用以下命令打印路径列表:
# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
“.bash_profile”文件如下所示:
# nano .bash_profile
GNU nano 1.3.12 File: .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
在添加“.bash_profile”文件之前,我已经运行了两个守护程序,并得到以下错误消息,但是我可以运行确切的路径:
# zendctl.sh restart
-bash: zendctl.sh: command not found
mysql输出错误:
# mysql
-bash: mysql: command not found
已成功以完整路径重新启动,请参见以下输出:
# /u01/zend/bin/zendctl.sh restart
/u01/zend/bin/apachectl stop [OK]
/u01/zend/bin/apachectl start [OK]
Stopping Zend Server GUI [Lighttpd] [OK]
spawn-fcgi: child spawned successfully: PID: 15921
Starting Zend Server GUI [Lighttpd] [OK]
现在,我将mysql和zendserver路径添加到“.bash_profile”文件中:
# nano .bash_profile
GNU nano 1.3.12 File: .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH=$PATH:/u01/mysql/bin
export PATH=$PATH:/u01/zend/bin
要调用.bash配置文件更改,请使用以下命令:
. ./.bash_profile
或:
source .bash_profile
现在,我可以在我们的服务器上看到新添加的路径:
# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/u01/mysql/bin:/u01/zend/bin
现在,它已成功重启:
# zendctl.sh restart
/u01/zend/bin/apachectl stop [OK]
/u01/zend/bin/apachectl start [OK]
Stopping Zend Server GUI [Lighttpd] [OK]
spawn-fcgi: child spawned successfully: PID: 16882
Starting Zend Server GUI [Lighttpd] [OK]
相关主题