大家可能都听说过Linux里的环境变量,这东西就像一张全局的配置表,系统里的所有进程都能随时查、随时改。最常见的是PATH和LANG,前者告诉系统去哪里找命令,后者决定默认语言。想体会PATH的魅力?只要记住一点:当你敲下“ls”回车时,shell不会傻乎乎地去/bin里翻文件,而是会先翻翻PATH列表里的目录,找到了马上就执行。这就是环境变量的本质——配置一次,到处都好用。 要是想看看某个变量存不存在,直接打开终端输个“printenv VARIABLE_NAME”或者干脆敲个“env”,所有变量的值马上就一目了然了。 如果只需要临时用一下某个脚本,不想让别人或者下次登录还得重新配,那就这么干:先在自己的目录下建个存放脚本的文件夹,给它加上执行权限。然后用export把这个路径加到PATH后面。比如export PATH="$PATH:~/testPath"。这时候直接输testscript.sh就能跑起来。但这招只限当前窗口有效,新开个终端就得重新来一遍。 要是想让这玩意儿只对自己管用一辈子,得改个人配置文件,像~/.bash_profile、~/.bash_login或者~/.profile都行。把“export PATH="$PATH:~/testPath"”这句写到文件里,再运行source ~/.bash_profile让它生效。这招新开窗口还能用,但换个用户登录就失效了。 要是想让所有用户都用同一个路径,就得动系统级别的文件。到/etc/profile.d/目录下新建个脚本,名字随便起。写进去一行“export PATH="/root/testPath:${PATH}"”,给脚本加个可执行权限。重启或者新登录后就能直接用了。 总结一下这几种情况: 临时设置用export,用完就走; 自家用户用个人配置文件; 全系统共享就写/etc/profile.d/的脚本。 不过我觉得前两种办法更靠谱,最后那种风险最大——要是路径写错了可能影响系统程序运行。建议大家多用前两种办法,实在不行再考虑最后这种,而且记得一定要备份和验证好!