linux初学之命令提示符 prompt

登录linux后,默认的系统命令提示符毫无个性,无法明显辨别生产和测试环境,而导致误操作。 可以 通过修改PS1变量实现个性的提示符格式,避免这种低级错误。

下面我以Rocky8.6来举例:

1、查看当前的命令提示符

echo $PS1

从下图可以看出输出的结果为:[\u@\h \W]\$,这个变量对应就是[linqixin@rocky86 ~]$

#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 用户,则会显示提示符为"#";如果是普通用户,则会显示提示符为"$"

#字体颜色
\e[30m我是黑色\e[0m
\e[31m我是红色\e[0m
\e[32m我是绿色\e[0m
\e[33m我是黄色\e[0m
\e[34m我是蓝色\e[0m
\e[35m我是紫红色\e[0m
\e[36m我是青蓝色\e[0m

#背景颜色
\e[40m我背景是黑色\e[0m
\e[41m我背景是红色\e[0m
\e[42m我背景是绿色\e[0m
\e[43m我背景是黄色\e[0m
\e[44m我背景是蓝色\e[0m
\e[45m我背景是紫红色\e[0m
\e[46m我背景是青蓝色\e[0m
\e[47m我背景是白色\e[0m

#特殊效果
0 #关闭效果
1 #高亮显示
3 #斜体
4 #下划线
5 #闪烁,闪烁效果与远程工具所在的环境有关
7 #反白显示
8 #隐藏
9 #删除线

2、修改命令提示符格式

格式:\[\e[number;number;.....m\]

例子:将命令提示符修改为这种样式[15:48:10 linqixin@rocky86 ~]$
 

PS1='\[\e[35;1m\][\[\e[33;1m\]\t \[\e[34;1m\]\u\[\e[31;1m\]@\[\e[36;1m\]\h \[\e[37;1m\]\W\[\e[35;1m\]]\[\e[32;1m\]\$\[\e[0m\]'

断下句就是这样的:
\[\e[35;1m\][         #把[变成紫色并高亮
\[\e[33;1m\]\t        #把时间变成黄色
\[\e[34;1m\]\u        #把当前的用户名变为蓝色
\[\e[31;1m\]@         #把@变成红色
\[\e[36;1m\]\h        #把主机名变成天蓝色    
\[\e[37;1m\]\W        #把当前目录名称变成白色
\[\e[35;1m\]]         #把]变成紫色
\[\e[32;1m\]\$        #把$变成绿色
\[\e[0m\]             #结束效果

然后将此命令复制粘贴保存到/etc/profile.d/env.sh即可

nano /etc/profile.d/env.sh
#将命令复制到env.sh,ctrl+x然后保存退出即可

cat /etc/profile.d/env.sh
#查看env.sh的内容,PS1变量是否粘贴正确

PS:如果是需要修改Ubuntu中命令提示符的样式,需要修改的配置文件与Rocky有所差别。

扫描二维码关注公众号,回复: 16513553 查看本文章

Ubuntu中,如果说要让所有普通用户PS1变量都能生效,需要写入到/usr/share/bash-completion/bash_completion文件下的最下面。如果是需要单独定义某一个用户,需要写入到用户家目录下.bashrc文件的最下面。

猜你喜欢

转载自blog.csdn.net/qq_54381110/article/details/130740244