美文网首页
Shell脚本在当前终端添加环境变量的正确姿势

Shell脚本在当前终端添加环境变量的正确姿势

作者: 拉普拉斯妖kk | 来源:发表于2021-08-22 18:24 被阅读0次
    • 在Linux中我们经常需要设置一些环境变量,设置环境变量的方式有很多,有些是对当前用户有效的,有些是对所有用户有效的,有些是永久的。很多时候我们会有这样的需求,只要在当前终端中让设置的环境变量生效,这样退出该终端后不影响其他程序的运行。
    • 一般可以通过export命令来设置环境编写,比如设置动态库加载路径export LD_LIBRARY_PATH=./lib。
    • 如果需要配置的环境变量很多,或者每次做某件工作前都得配置这些环境变量,这时通过手动输入命令的方式就很不方便了,这时就需要shell脚本登场。
    • 我们可以将配置的命令写到shell脚本中,这样只用执行一下脚本就能完成工作了,程序员的原则就是能用脚本做的事情绝不动手。
    • 写好脚本set_env.sh后,我们欢欣鼓舞的在当前终端中执行./set_env.sh,却会发现设置并没有生效,用export命令查看也没有看到新的配置。
    • 关键原因就在于通过./set_env.sh这种方式执行一个脚本文件其实脚本中的命令是在子shell中运行的,执行的结果只对子shell有效,并不会在父shell中生效。
    • 这种情况下正确的姿势就是使用source set_env.sh,这样设置的环境变量就会在当前终端中生效。
    • source命令的作用是在当前bash终端下读取并执行shell文件中的命令。
    • 更简单的命令是. set_env.sh,点命令(.)和source是等效的。

    相关文章

      网友评论

          本文标题:Shell脚本在当前终端添加环境变量的正确姿势

          本文链接:https://www.haomeiwen.com/subject/pyaciltx.html