Linux学习之路:shell变量(二)环境变量
1、env (environment 的缩写)和export显示所有环境变量
2、 环境变量说明
环境变量 | 意义 |
HOME | 用户主文件夹相当于“~” |
SHELL | Linux默认为/bin/bash |
HISTSIZE | history记录的条数 |
mail 读取邮件的目录(每个用户不同):/var/spool/mail/root | |
PATH | 执行文件查找路径,路径之间用:分隔,查找的顺序为PATH中次序 |
LANG | 语系数据中文:zh_CN.gb2312和zh_CN.UTF-8 |
RANDOM | 随机数(在0~32767之间) 生成器为/dev/random |
(1) LANG :语系变量
locale -a 会查询到系统内所有的支持语系,都保存在/usr/bin/locale/ 下,整个系统的默认语系在/etc/sysconfig/i18n内
英文为:en_US 中文为:zh_CN.gb2312和zh_CN.UTF-8
3、set查看所有变量(含环境变量与自定义变量)除了环境变量同时也会列出bash中的其他变量
(1)变量PS1
\u 当前用户名
\h 当前主机名
\t 当前时间(24小时格式)
\W 当前相对路径
\$ 为root角色时显示“#”其他角色显示“$”
(2) 变量 $: 当前SHELL 使用的PID
(3) 变量?:命令执行后的回传码
0:执行成功 其他值:为失败,根据失败的回传码可找到失败原因
(4)下图为bash内的其他主要变量(图来自鸟哥)
4、export 转换自定义变量为环境变量
作用:转换为环境变量后,该变量就可被子进程调用(有待详解)
环境变量=全局变量 自定义变量=局部变量
原理:在启动一个shell后,系统会自动将环境变量一次性导入到shell所在的“内存块”中,这个内存块内的变量可被其他子进程(其他shell)调用,
当用户操作export后,该变量就会被写到刚刚“内存块”,这样这个变量就可以被调用了;
当启动子shell时,该shell会将父shell内存块中的变量导入到自己的内存块中,即可使用该变量!
说明:
文章中图片和总结性文字来自:鸟哥的Linux私房菜系列基础学习篇(第三版)感谢鸟哥带我走上Linux的道路!我会毫无顾忌,一往直前!