让你的Shell命令提示符飞起来~
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了让你的Shell命令提示符飞起来~相关的知识,希望对你有一定的参考价值。
前段时间,刚来实习的时候,由于自己的开发机环境还没配好,就用了老大的机器,打开之后,咦~!为啥不是传统Linux的[[email protected]] ?这引起了本宝宝极大的好奇心(为啥装嫩?难道要装老?),于是乎,再一次打开了鸟哥的菜谱(鸟哥的Linux私房菜),同时也为了一下度娘,总算有了答案。
PS1!没错,就是这个叫做PS1的东西,打开Linux,输入命令
echo $PS1
你看到的就是这个,
[[email protected] ~]# echo $PS1 [\[email protected]\h \W]\$
就是这个PS1左右着你的Linux的shell命令提示符!
这个PS1,究竟是什么意思呢?经过百度得到了答案:
\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\] 其中“F”为字体颜色,编号30~37;“B”为背景色,编号40~47。不过呢,能设置颜色,他就肯定能够取消设置,注意:这里的取消设置,和不设置是两吗事情!至于详细区别,当你读完了我的博文你就O了。呵呵。取消设置:\[\e[m\]
颜色表
前景 背景 颜色
30 40 黑色
31 41 红色
32 42 绿色
33 43 黄色
34 44 蓝色
35 45 紫红色
36 46 青蓝色
37 47 白色
代码 意义
0 OFF
1 高亮显示
4 underline
7 反白显示
8 不可见
举个例子吧~
打开我们的 .bashrc 文件
vim ~/.bashrc
往里边添加一行
export PS1="[\[\e[32m\]#\##\[\e[31m\]\[email protected]\[\e[36m\]\h \w]\$\[\e[m\]"
然后,保存并用source执行:
source ~/.bashrc
function parse_git_dirty { [[ $(git status 2> /dev/null | tail -n1) != "nothing to commit (working directory clean)" ]] && echo "*" } function parse_git_branch { git branch --no-color 2> /dev/null | sed -e ‘/^[^*]/d‘ -e "s/* \(.*\)/git:\1$(parse_git_dirty)/" } export PS1="\[\e[36m\]○ \[\e[33m\]\$(parse_git_branch)\[\e[m\] \w \[\e[36m\]\t\[\e[m\]\n\[\e[35m\]→\[\e[m\]"
以上是关于让你的Shell命令提示符飞起来~的主要内容,如果未能解决你的问题,请参考以下文章