当前位置:首页 > 资讯教程 > 技术栏目 > Ubuntu 18.04每次打开命令行都要重新source profile的解决方法

Ubuntu 18.04每次打开命令行都要重新source profile的解决方法

来源:网络整理 2019-01-29 0人评论
在Ubuntu 18.04.1 LTS操作系统下配置了JAVA环境,每次重新打开命令行都要重新source profile,以下是该问题的原因分析及解决方法、注意事项。
 
产生该问题的原因分析和记录
 
1.bashrc是在系统启动后就会自动运行。
 
2.profile是在用户登录后才会运行。
 
3./etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量。
 
 
延伸:login shell与non-login shell
 
1.non-login shell:登录终端不需要密码,例如直接在Ubuntu当前用户中打开的终端。这种情况shell不会读取/etc/profile和/.bash_profile,而是读取/.bashrc来应用新的环境变量。
 
2.login shell:需要输入密码登录的shell,例如通过 su 用户名 登录的shell。此种方式登录时,shell会重新读取/etc/profile和~/.bash_profile来应用新的环境变量。
 
3.识别非login的shell方法还是运行#echo $0命令,得到的结果假设没有'-'前缀。即为非login的。
 
 
解决方法
 
把export语句写在~/.bashrc文件里,或者在该文件里写上source /etc/profile。可以参考在Ubuntu 18.04.1系统中搭建Java环境及创建Maven项目一文。
 
 
注意事项
 
non-login shell启动的脚本不会入/etc/profile中的命令,所以在/etc/profile中设置的某些命令不会生效,可能会导致一些问题,需要格外注意。
 
相关阅读
期待你的留言
已有( 0 )条评论
昵称 *
邮箱

*验证码: 验证码

快评短语
写的太好了,正好为我解惑 小编努力,可以写的更好! 无感觉,然并卵 一般般,不详细 还不错,希望能更好 没啥事,就来灌一下水 失望,还以为找到自己需要的 还有其它的吗?
推荐下载
热门下载
  • 周排行
  • 月排行