“ 目录:RHCA+ -> 5 Shell脚本 -> 6-10 环境变量(env、export命令) ”

一个环境变量会因为用户身份的不同而具有不同的值;只在当前shell进程及其子进程生效
添加到环境变量时可只写变量名,或者写变量名和值,可直接创建环境变量;语法格式:export [参数] 变量名[=变量值]
|
参数 |
作用 |
|
-f |
设置[变量名]为函数名 |
|
-n |
删除指定的变量;实际并未删除,只是不输出到后续指令的执行环境中 |
|
-p |
查看所有的环境变量 |
|
变量名 |
作用 |
|
HOME |
用户的主目录(即家目录) |
|
SHELL |
用户使用的Shell解释器名 |
|
HISTSIZE |
输出的历史命令记录条数 |
|
HISTFILESIZE |
保存的历史命令记录条数 |
|
|
邮件保存路径 |
|
LANG |
系统语言、语系名称 |
|
RANDOM |
生成一个随机数字(0-32767) |
|
PS1 |
Bash解释器的主命令提示符,以下为可设置参数: \\d:日期,格式为weekday month date \\H:完整的主机名 \\h:仅取主机的第一个名字 \\t:显示时间为24小时格式,如:HH:MM:SS \\T:显示时间为12小时格式 \\A:显示时间为24小时格式,如:HH:MM \\u:当前用户的账号名 \\v:BASH的版本信息 \\w:完整的工作目录;家目录会以 ~代替 \\W:利用basename获取的工作目录名,所以只会列出最后一个目录 #:下达的第几个命令 $:提示字符;root用户提示符为:# ,普通用户为:$ [:字符[ ]:字符] !:命令行动态统计历史命令次数 |
|
PS2 |
次命令提示符,默认为>;一条命令分多行输入时显示,为输入完的命令使用\\即可进入多行模式 |
|
PS3 |
使用select命令进行选择时的菜单提示符 |
|
PS4 |
修改跟踪输出的前缀,很少用 |
|
PATH |
解释器搜索命令的路径 |
|
EDITOR |
用户默认的文本编辑器 |
|
BASHPID |
当前bash进程的pid号 |
|
UID |
当前用户的id号 |
|
GROUPS |
当前用户所属组的id号 |
|
HOSTNAME |
主机名 |
|
PWD |
当前工作目录 |
|
OLDPWD |
前一个工作目录 |
一、查看PS1变量,系统默认提示符
[root@wuzuniao ~]# echo $PS1 #查看主提示符设置规则;当前规则含义是显示当前用户、主机名和最后一个工作目录
[\\u@\\h \\W]\\$
[root@wuzuniao ~]#
二、修改环境变量
PATH是由多个路径值组成的变量,每个值用冒号间隔,告诉Bash解释器待执行的命令可能存放的位置
[root@wuzuniao ~]# echo $PATH #查看命令执行时查询的路径有哪些
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@wuzuniao ~]# PATH=$PATH:/root/bin #增加可用命令的目录
[root@wuzuniao ~]# echo $PATH #验证
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/root/bin:/root/bin
[root@wuzuniao ~]#
三、提升为全局环境变量给其他用户使用
1、使用export命令(临时)
[root@wuzuniao ~]# echo $HOME #查看HOME变量在不同的用户身份下都有哪些值
/root
[root@wuzuniao ~]# su xie
[xie@wuzuniao root]$ echo $HOME #查看HOME变量在不同的用户身份下都有哪些值
/home/xie
[xie@wuzuniao root]$ a=1 #普通用户下设置变量不具有全局性,默认其他用户不能用;多次重复设置会覆盖
[xie@wuzuniao root]$ export a #使用命令提升为全局变量
[xie@wuzuniao root]$ su root
Password:
[root@wuzuniao ~]# echo $a #验证
1
[root@wuzuniao ~]# unset a #取消变量设置,全局生效
2、修改.bashrc文件(永久,只对单用户有效)
[root@wuzuniao ~]# vim .bashrc #在文件最后一行添加定义变量定义
export a=1
[root@wuzuniao ~]# source ~/.bashrc #立即生效;不使用此命令则要重新登录
3、修改profile文件(永久,对所有用户有效)
[root@wuzuniao ~]# vim /etc/profile #在文件最后一行添加定义变量定义
export a=1
[root@wuzuniao ~]# source /etc/profile #立即生效;不使用此命令则要重新登录





