Linux中环境变量到底写在哪个文件中?解析login shell 和 no-login shell
2013-06-28 13:01
260 查看
login shell:取得bash 时需要完整的登入流程,就称为login shell。举例来说,同tty1~tty6登入时, 需要输入用户名和密码,此时取得的bash就称为login shell
non-login shell:取得bash介面的方法不需要重复登入的动作。
举两个例子
(1)以X window登入linux后,再以X 的图形化介面启动终端机,此时那个终端机并不需要再次的输入用户名和密码,那个bash的环境就称为non-login shell
(2)在原本的bash环境中再次下达bash这个指令,同样没有要求输入用户名和密码,那个第二个bash也是non-login shell
login shell 和 no-login shell 的执行顺序:
Login shells:
/etc/profile
/etc/profile.d
~/.bash_profile
~/.bashrc
/etc/bashrc
Non-login shells:
~/.bashrc
/etc/bashrc
/etc/profile.d
注意:
/etc/profile:整个系统的环境
放在~里的是个人设置,一般放在~/.bashrc
如果想执行当前目录的脚本,有2种方法: 可以运行./script.sh (需要有可执行权限)
(1)使bash新生成一个子bash来执行,例如:./script.sh (需要有可执行权限)。在此情况下, 脚本对环境变量的更改只对子bash有效.
(2) 可使用source命令来直接执行脚本(可用'.'来代替source). 它与上面的方法有两点区别:
1, 脚本文件不需要执行权限.
2, 就在当前bash中执行, bash不会新fork一个子bash来执行它, 所以脚本对环境变量的更改会影响到当前bash.
所以当希望使修改的环境变量生效,用source即可。
non-login shell:取得bash介面的方法不需要重复登入的动作。
举两个例子
(1)以X window登入linux后,再以X 的图形化介面启动终端机,此时那个终端机并不需要再次的输入用户名和密码,那个bash的环境就称为non-login shell
(2)在原本的bash环境中再次下达bash这个指令,同样没有要求输入用户名和密码,那个第二个bash也是non-login shell
login shell 和 no-login shell 的执行顺序:
Login shells:
/etc/profile
/etc/profile.d
~/.bash_profile
~/.bashrc
/etc/bashrc
Non-login shells:
~/.bashrc
/etc/bashrc
/etc/profile.d
注意:
/etc/profile:整个系统的环境
放在~里的是个人设置,一般放在~/.bashrc
如果想执行当前目录的脚本,有2种方法: 可以运行./script.sh (需要有可执行权限)
(1)使bash新生成一个子bash来执行,例如:./script.sh (需要有可执行权限)。在此情况下, 脚本对环境变量的更改只对子bash有效.
(2) 可使用source命令来直接执行脚本(可用'.'来代替source). 它与上面的方法有两点区别:
1, 脚本文件不需要执行权限.
2, 就在当前bash中执行, bash不会新fork一个子bash来执行它, 所以脚本对环境变量的更改会影响到当前bash.
所以当希望使修改的环境变量生效,用source即可。
相关文章推荐
- Linux中环境变量到底写在哪个文件中?解析login shell 和 no-login shell
- linux课堂笔记--shell3环境变量配置文件
- login shell和non-login shell环境配置、 环境变量的设置、查看
- linux笔记:shell基础-环境变量配置文件
- login-shell 和 non-login shell 对环境配置文件的读取
- Linux笔记(管道符/作业控制,shell变量,环境变量配置文件,常见问题)
- LINUX系统学习笔记管道符和作业控制 ,shell变量 , 环境变量配置文件
- LInux中添加环境变量与shell解析(export PATH)(Linux)
- (1)linux环境变量初始化与对应文件的生效顺序
- gcc编译过程、C语言编译过程分析、环境变量设置、linux文件夹结构和用途介绍、常用文件和目录的操作命令、文件类型
- linux命令行与shell脚本大全_第五章_使用环境变量
- 程序员的自我修养——Linux下的环境变量原理与shell
- Linux中环境变量文件profile、bashrc、bash_profile之间的区别和联系
- Linux环境变量种类、文件、设置
- QTP 解析外部的XML的环境变量文件
- Linux中环境变量文件及配置
- Linux:shell变量功能和Bash shell的操作环境
- linux 常用 shell 环境变量
- Linux头文件和库文件添加环境变量与GCC编译器添加INCLUDE与LIB环境变量
- linux下JDK安装,不同用户不同SHELL下环境变量设置