『忘了再学』Shell基础 — 14、环境变量(二)
2022-05-19 11:00
1626 查看
[toc]
提示:
在Linux系统中,环境变量分为两种。一种是用户自定义的环境变量,另一种是系统自带的环境变量。
而在系统自带的环境变量中,PATH环境变量、PS1环境变量、LANG语系变量需要进行说明一下。
本篇文章主要说明系统自带的环境变量中的PS1环境变量。
1、PS1变量的作用
PS1变量:命令提示符设置。也就是
[root@localhost ~]#内容的设置。
PS1是一个很有意思的变量,是用来定义命令行提示符的,可以按照我们自己的需求来定义自己喜欢的提示符。
2、PS1变量的查看
- 直接查看PS1变量,如下:
[root@localhost ~]# echo $PS1 [\u@\h \W]\$
- 通过
set
命令查看,如下图:SP2变量是定义换行之后的命令提示符的显示。
2、PS1可以支持的选项
我们先解释一下系统命令提示符的组成
[root@localhost ~]#,我们之前说过
root位置代表当前登陆的用户,
localhost位置代表当前主机名的简写主机名,
~位置表示当前所在目录,第四列就是命令提示符。
而通过PS1变量我们得知上面的显示组成是如下选项:
[\u@\h \W]\$。
所以下面我们罗列出PS1支持的选项:
\d
:显示日期,格式为星期 月 日
。\H
:显示完整的主机名。如默认主机名localhost.localdomain
。\h
:显示简写主机名。如默认简写主机名localhost
。\t
:显示24小时制时间,格式为HH:MM:SS
。\T
:显示12小时制时间,格式为HH:MM:SS
。\A
:显示24小时制时间,格式为HH:MM
。\@
:显示12小时制时间,格式为HH:MM am/pm
。\u
:显示当前用户名。\v
:显示Bash的版本信息。\w
:显示当前所在目录的完整名称。\W(大写)
:显示当前所在目录的最后一个目录。\#
:执行的第几个命令。\$
:提示符。如果是root
用户会显示提示符为#
,如果是普通用户会显示提示符为$
。
注意:
在PS1变量中,如果是可以解释的符号,如
\u、\h等,则显示这个符号的作用。如果是不能解释的符号,如@或“空格”,则原符号输出。
总结:
# 默认的提示符显示 # [用户名@简写主机名 所在目录最后一级] 提示符 [root@localhost ~ ] # echo $PS1 [\u@\h \W]\$
3、PS1环境变量的配置
其实我们在使用Linux系统的时候,还是比较习惯的默认的系统命令提示符的配置,也就是PS1变量的默认配置,一般我们是不做任何修改的,因为我们习惯了,修改了之后你会不舒服。如有需要,则看一下。
设置PS1环境变量,如下:
#修改提示符为 #[用户名@当前时间 当前所在完整目录] 提示符 [root@localhost ~ ] # PS1='[\u@\t \w]\$ (空格)' # (空格)是因为习惯,看着舒服,不是必须。 #切换下当前所在目录 #因为家目录是看不出来区别的 [root@04:46:40 ~ ] # cd /usr/local/src/ [root@04:47:29 /usr/local/src] # #提示符按照我们的设计发生了变化
这里一定要注意,PS1变量的值要用单引号包含,因为需要把PS1变量的选项中的特殊符号转变成普通的字符串(主要是
$符号),否则设置不生效。系统默认也是单引号设置的,你照着写就可以了。
扩展:再举个例子。
#可以同时给SP1设置更多的选项 [root@localhost ~ ] # PS1='[\u@\@ \h \# \W]\$ ' [root@04:53 上午 localhost 31 src] # #\@:显示12小时制时间,格式为HH:MM am/pm。 #\#:会显示执行了多少个命令。
PS1变量可以自由定制,不过说实话,默认的提示符已经使用习惯了,如果换一个还是非常别扭的,推荐默认的提示符就很好。
4、总结
我们上边在命令行中直接定义PS1变量的值是临时生效的,一旦重启电脑就会消失,如果需要永久生效,需要写入到对应的配置文件中的。
对应的配置文件为
/etc/bashrc,该文件也是一个环境变量的配置文件。
如下图:
注意看图中SP1变量的配置,是加双引号的,需要在
\$之前再加上一个
\,才能正常显示
\$。
相关文章推荐
- Shell基础-环境变量配置文件
- shell基础-bash变量-环境变量
- linux之基础shell脚本编程4 字符串操作,变量赋值,配置用户环境
- Shell基础之Bash的变量——变量概述、自定义变量(本地变量)、环境变量、位置参数变量、预定义变量(预定义变量和接收键盘输入)
- Shell基础-环境变量配置文件-其他配置文件和登录信息
- Shell基础之环境变量配置文件
- Linux学习(二十二)Shell基础(二)变量、环境变量配置文件
- linux笔记:shell基础-环境变量配置文件
- Shell基础(三):环境变量配置文件
- 『忘了再学』Shell基础 — 15、环境变量(三)
- centos shell基础 alias 变量单引号 双引号 history 错误重定向 2>&1 jobs 环境变量 .bash_history source配置文件 nohup & 后台运行 cut,sort,wc ,uniq ,tee ,tr ,split, paste cat> 2.txt <<EOF 通配符 glob模式 发邮件命令mail 2015-4-8 第十二节课
- Shell基础-环境变量配置文件-简介
- linux超级基础系列——shell变量(本地变量和环境变量)
- Linux CentOS 7 Shell基础(命令历史,管道,作业控制,变量及环境变量)
- Shell编程基础之环境变量
- Shell基础-Bash变量-环境变量(上)
- Shell基础-环境变量配置文件
- Shell基础-Bash变量-环境变量(下)
- linux超级基础系列——shell变量(本地变量和环境变量)
- linux脚本编写基础(环境变量、shell流程控制)