在之前的文章里,我们教了大家如何设置 Bash 的提示语,来告知操作人,正在操作的是哪台服务器。但是,很多时候,我们经常要执行非常多的命令,来完成我们的工作,那么在同时操作多个服务器时,依然容易迷失在命令行之中。
今天,我来教你如何自定义我们的 Bash 的提示,来帮助我们认清我们的服务器。
我们的命令行前面会有一个简单的提示,这个提示就是 Shell Prompt 。我们通过自定义 Shell Prompt 可以实现自定义的提示。通过这个提示,就可以提醒用户,你目前操作的是什么服务器。
Shell Prompt 的格式被定义在 $PS1
变量中,你可以通过执行 echo $PS1
来拿到当前的提示。比如我的提示就是[\u@\h \W]\$
我们通过修改 $PS1
变量,就可以实现修改Shell Prompt 的提示。
在上面的提示中,我们去掉用作区分的标点符号,我们可以提取出来 \u
、\h
、\W
和\$
,这些符号都有其特殊的含义,借助它们的特殊含义,我们可以实现我们的需求。
\u
:展示当前的用户的用户名\h
:展示主机名\W
:展示当前的目录的目录名\w
:展示当前目录的全路径\T
:展示24小时制的时间\n
:换行符\r
:回车符\s
:Shell名\$
:当是普通用户时,会展示#
,如果是 root 用户展示$
\H
:展示 FQDN 主机名\@
:展示 AM/PM 形式的日期。完整的内容可以查看: Prompt magic - IBM
为了实现我们的提醒效果,建议大家在shell中展示全路径、主机名、用户身份,并且注明当前服务器是什么环境,比如。我设置完成后,是这样的。
Production | \u@\h \w \t \n \$
这样一个提示,可以立刻明白我是在操作生产环境,以免我误操作时,没有注意到我使用的是哪个环境。你也可以根据你的需要来设置你的 Shell Prompt 的内容。
有些时候,文字可能无法给我们足够的警示。这时,我们可以选择为我们的 shell Prompt 加个颜色,这样能够更好的展示。
如果想要为我们的shell上色,就要在我们的Shell中加入上色的代码
其中,
\e[x;y m
为给后续的文字上色,x,y都是颜色的编号。其中常用的红色为0;31
,蓝色0;34
,绿色0;32
\e[m
则为停止上色。\e[0;31m Production \e[m | \u@\h \w \t \n \$
虽然目前我们设置成功了,但是并没有像我们的提示信息一样存留,重新连接就会消失。
这是,我们需要修改一下配置文件,来加入我们的设置。
我们可以修改 ~/.bashrc
或~/.bash_profile
,再其中添加代码,来实现我们的输出效果.
在这个文件中加入如下代码,即可实现效果。
export PS1 = '\e[0;31m Production \e[m | \u@\h \w \t \n \$'
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。