谢烟客---------Linux之Bash基础特性配置文件(4)
2017-08-02 08:47
495 查看
前言
在bash进程中,读取到bash进程内存中的数据,在bash进程终止时,进程中的数据会被操作系统回收,变量也是定义在当前shell进程内存空间的数据。在shell终止时,变量也会失效
作用
选项:定义命令的工作行为
配置文件也能定义工作行为,主要存储命令的诸多选项,定义长期有效的行为
功能
让用户能更好的使用bash
配置文件的分类
对所有用户生效的配置:
/etc/profile,/etc/profile.d/
/etc/bashrc
对当前用户有效
~/.bashrc
~/.bash_profile
profile类,定义环境变量和脚本
bashrc类:定义本地变量和别名
登陆式切换:会读取目标用户的配置文件,初始化环境
1)su -l user
2)输入密码登陆
非登陆式切换:不会读取目标用户的配置文件
2)无需输入密码登陆:su user, 图形界面下的终端
2)脚本运行时,在当前shell的子shell中运行
******验证脚本运行为当前shell的子shell进程*********
环境变量对当前shell的子shell进程生效
在bash进程中,读取到bash进程内存中的数据,在bash进程终止时,进程中的数据会被操作系统回收,变量也是定义在当前shell进程内存空间的数据。在shell终止时,变量也会失效
作用
选项:定义命令的工作行为
配置文件也能定义工作行为,主要存储命令的诸多选项,定义长期有效的行为
功能
让用户能更好的使用bash
配置文件的分类
对所有用户生效的配置:
/etc/profile,/etc/profile.d/
/etc/bashrc
对当前用户有效
~/.bashrc
~/.bash_profile
profile类,定义环境变量和脚本
bashrc类:定义本地变量和别名
登陆式切换:会读取目标用户的配置文件,初始化环境
1)su -l user
2)输入密码登陆
# echo $PATH /usr/local/apache/bin:/usr/local/nginx/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin # su -l testbash -sh-4.2$ echo $PATH /usr/local/nginx/sbin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin -sh-4.2$读取配置文件的顺序: profile --> profile.d --> ~/.bash_profile --> ~/.bashrc --> /etc/bashrc
$ nano /etc/profile.d/nginx.sh ##在profile.d中定义nginx的二进制文本的路径在$PATH之前 export PATH=/usr/local/nginx/sbin:$PATH $ vim ~/.bash_profile ##在~/.bah_profile中¥PATH之前定义mysql的二进制文件的路径 PATH=/usr/local/mysql/bin:$PATH:$HOME/.local/bin:$HOME/bin export PATH 如果先读到的,显示在后,读取配置文件的顺序在前 重启bash进程 $ echo $PATH /usr/local/mysql/bin:usr/local/nginx/sbin:
非登陆式切换:不会读取目标用户的配置文件
2)无需输入密码登陆:su user, 图形界面下的终端
2)脚本运行时,在当前shell的子shell中运行
# echo $PATH /usr/local/apache/bin:/usr/local/nginx/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin # su testbash $ echo $PATH /usr/local/apache/bin:/usr/local/nginx/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin读取配置文件的顺序:~/.bashrc --> /etc/bashrc --> profile.d
******验证脚本运行为当前shell的子shell进程*********
环境变量对当前shell的子shell进程生效
[root@izpo45bh60h6bsz ~]# name="obama jerry" ##有空格的字符引用,加引号,否则会报错 [root@izpo45bh60h6bsz ~]# echo $name obama jerry [root@izpo45bh60h6bsz ~]# declare -x name ##申明为环境变量 [root@izpo45bh60h6bsz ~]# nano tr_d_dc_s_I.sh #!/bin/bash echo $name [root@izpo45bh60h6bsz ~]# chmod +x tr_d_dc_s_I.sh ##给予脚本执行权限 [root@izpo45bh60h6bsz ~]# ls -l tr_d_dc_s_I.sh -rwxr-xr-x 1 root root 23 Jun 10 14:48 tr_d_dc_s_I.sh [root@izpo45bh60h6bsz ~]# ./tr_d_dc_s_I.sh ##变量生效 obama jerry [root@izpo45bh60h6bsz ~]# unset name ##撤消变量 [root@izpo45bh60h6bsz ~]# ./tr_d_dc_s_I.sh ##变量为空 [root@izpo45bh60h6bsz ~]#
相关文章推荐
- 谢烟客---------Linux之Bash基础特性(2)
- Linux上的文件管理类命令和bash 的基础特性及正则表达式
- Linux基础知识--2.Linux的文件系统和bash的基础特性(1)
- 谢烟客---------Linux之Bash基础特性算术运算(5)
- 谢烟客---------Linux之Bash基础特性(1)
- 谢烟客---------Linux之Bash基础特性变量(3)
- 0823第三课-2 Linux的文件系统 bash基础特性
- 谢烟客---------Linux之Bash基础特性条件测试&&自定义退出状态码(6)
- linux基础-权限管理,手工添加用户,umask,bash配置文件
- Linux学习日记--基础命令(7)--bash中的变量,配置文件
- Linux基础(8)关于bash的配置文件
- Linux基础入门及系统管理01-Linux运维核心技能-bash基础特性详解09
- Linux基础入门及系统管理01-bash脚本编程之四文件测试及特殊变量19
- linux下vim和bash配置文件 源文件
- Linux修改类似.bash_profile等配置文件,不重启系统让配置立即生效的做法
- Linux下的bash配置文件
- Linux 配置文件 启动文件rc.local、/etc/bash.bashrc、~/bashrc、/etc/profile、~/.profile加载顺序
- bash基础-其他配置文件和登录信息
- [alpha]linux 启动配置文件:bash_profile 和 bashrc的区别
- MySQL-->基础知识-->linux 下 mysql配置文件 /etc/my.cnf 详细解释