您的位置:首页 > 运维架构 > Shell

Linux学习日记 —— 10.4.2 Shell基础-Bash变量-环境变量

2018-03-03 02:21 926 查看
1. 什么是环境变量

自定义变量只在当前的shell中生效,而环境变量会在当前的shell和这个shell的所有子shell中生效。

如果把环境变量写入配置文件,它就会在所有的shell中生效。

Linux系统中有一些内置的环境变量,用户可以修改系统环境变量的值,也可以自定义新的环境变量。

2. 操作环境变量

定义环境变量:

格式:export 变量名=变量值

[root@localhost ~]# export age=18
#定义一个新的环境变量age,值为18


也可将一个已经存在的本地变量(自定义变量)定义为环境变量。

格式:export 变量名

查看环境变量:

[root@localhost ~]# env
#查看所有的环境变量


上述命令看不到PS1这个环境变量,它是环境变量中的一个子分支,一个特例,可以通过set命令查看。

调用环境变量:

格式:$变量名

[root@localhost ~]# echo $age


删除环境变量:

格式:unset 变量名

子shell:

bash在当前的shell(Linux默认是bash)中,生成一个子shell。

pstree查看系统的进程树,可以识别当前是处于哪一层shell中。

exit命令可以退出一层shell。

3. 系统中常见的环境变量

系统中的环境变量有多个,这里只讲解常见的两个:PATH和PS1。

1)PATH

PATH的值是一系列路径字符串,是系统查找命令的路径,各个路径之间用冒号分割。

Linux中绝大多数的系统命令都是二进制的可执行文件。

[root@localhost ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin


修改PATH的值:

[root@localhost ~]# PATH="$PATH":/root/sh


将字符串 :/root/sh 拼接到环境变量PATH的值的后面。

注意:这种更改环境变量PATH的值的方式只会临时生效,一旦重启,就会恢复原来的值。要想永久生效,需修改环境变量配置文件。

2)PS1

PS1的作用是定义系统提示符的格式,默认值是[\u@\h \W]$ 。

注意:最后有一个空格。

[root@localhost ~]# $PS1[\u@\h \W]\$


对于PS1的值,可选的特殊字符有:

\d 显示当前日期。格式为“星期 月 日”。

\h 显示简写主机名。默认主机名为“localhost”。

\t 显示24小时制时间。格式为“HH:MM:SS”。

\T 显示12小时制时间。格式为“HH:MM:SS”。

\A 显示24小时制时间(不包含秒)。格式为“HH:MM”。

\u 显示当前用户名。

\w 显示用户当前所在目录的完整名称。

\W 显示用户当前所在目录的最后一个文件夹。

# 显示这是第几条命令。

$ 起始符。root用户,显示#;普通用户,显示$。

修改PS1的值:

[root@localhost ~]# PS1='[\u@\h \A \w]\$ '


修改环境变量PS1的值,进而修改系统的提示符。

只会临时生效。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  shell linux
相关文章推荐