目录
linux默认的命令提示符是这样的:
![1693270-20190624085301748-583861264.png](https://img2018.cnblogs.com/blog/1693270/201906/1693270-20190624085301748-583861264.png)
白色的,如果当前执行的命令很多的话,一整块屏幕上全是一堆输出信息,上一条命令在哪?我刚输入的命令在哪?找的头晕。有没有办法可以修改命令提示符的样式,尤其是自定义颜色,
这样就比较好区分上一条命令和下一条命令,也好找刚才输入的命令在哪儿。当然是没问题的啦!通过修改变量PS1,可以自定义命令提示符,包括颜色!参数说明
PS1='content\$ '
,content代表你自定义需要显示的内容,$表示提示字符,如果是root时,提示符为:# ,普通用户则为:$(注意!$后面有一个空格,没有空格的话会报错)
PS1='[\u@\h \w]\$ '
,那么这里的\u\h \w是什么意思呢 符号 | 说明 |
---|---|
\d | 代表日期,格式为weekday month date,例如:"Mon Aug 1" |
\H | 完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux |
\h | 仅取主机的第一个名字,如上例,则为fc4,.linux则被省略 |
\t | 显示时间为24小时格式,如:HH:MM:SS |
\T | 显示时间为12小时格式 |
\A | 显示时间为24小时格式:HH:MM |
\u | 当前用户的账号名称 |
\v | BASH的版本信息 |
\w | 完整的工作目录名称。家目录会以 ~代替 |
\W | 利用basename取得工作目录名称,所以只会列出最后一个目录 |
\# | 下达的第几个命令 |
\$ | 提示字符,如果是root时,提示符为:# ,普通用户则为:$ |
修改颜色
我们可以通过设置PS1变量使提示符成为彩色。在PS1中设置字符序列颜色的格式为:
\e[F;Bm
有些文章也说颜色格式为\[\e[F;Bm\]
,好像哪种都行,我用的上面稍简单的哪种 其中 F 为字体颜色,编号30~37;B为背景色,编号40~47。 可通过\e[0;m关闭颜色输出;特别的,当B为1时,将显示加亮加粗的文字,详细请看下面的颜色表与代码表![1693270-20190624091158728-981958072.png](https://img2018.cnblogs.com/blog/1693270/201906/1693270-20190624091158728-981958072.png)
怎么设置呢,编辑家目录下的 .bashrc 文件,
输入PS1='[\e[32;40m\u\e[37;40m@\h \e[36;40m\w\e[37;40m]\$ ' 保存。执行source .bashrc
使之生效。 效果如下![1693270-20190624092043437-683067414.png](https://img2018.cnblogs.com/blog/1693270/201906/1693270-20190624092043437-683067414.png)