1PS1
要修改linux终端命令行颜色,我们需要用到PS1,PS1是Linux终端用户的一个环境变量,用来说明命令行提示符的设置。在终端输入命令:set,即可在输出中找到关于PS1的定义如下:
PS1='[\u@\h\W]\$'
linux默认的命令行提示信息为:[当前用户的账号名称@主机的第一个名字工作目录的最后一项]
说明如下:
\[\e]0;\u@\h:\w\a\]:由于有[\e]0这部分,所以不显示
${debian_chroot:+($debian_chroot)}:在Ubuntu中debian_chroot没有定义这部分,所以这部分是空
有效部分只有\u@\h:\w\$
\u表示用户(username);
\h表示主机(hostname);
\w表示当前工作目录(directory);
$如果您不是超级用户(非root),则插入一个“$”;如果您是超级用户(root),则显示一个“#”。
2PS1的定义中个常用的参数的含义
\d:代表日期,格式为weekdaymonthdate,例如:"MonAug1"
\e:ASCII转义字符
\H:完整的主机名称
\h:仅取主机的第一个名字
\j:shell当前管理的作业数
\1:shell终端设备名的基本名称
\n:ASCII换行字符
\r:ASCII回车
\s:shell的名称
\t:显示时间为24小时格式,如:HH:MM:SS
\T:显示时间为12小时格式
\@:格式为am/pm的12小时制的当前时间
\A:显示时间为24小时格式:HH:MM
\u:当前用户的账号名称
\v:BASH的版本信息
\V:bashshell的发布级别
\w:完整的工作目录名称
\W:利用basename取得工作目录名称,所以只会列出最后一个目录
\:下达的第几个命令
\!:该命令的bashshell历史数
\#:该命令的命令数量
\$:提示字符,如果是普通用户,则为美元符号$;如果超级用户(root用户),则为井号#。
\nnn:对应于八进制值nnn的字符
\\:斜杠
\[:控制码序列的开头
\]:控制码序列的结尾
3字体颜色配置
30m==黑色;31m==红色;32m==绿色;33m==黄色;
34m==蓝色;35m==洋红;36m==青色;37m==白色
4配置背景色
40m==黑色;41m==红色;42m==绿色;43m==黄色;
44m==蓝色;45m==洋红;46m==青色;47m==白色
5颜色截止
\[\e[0m\]
6其他功能数字
0==OFF
1==高亮显示(我使用的就是高亮)
4==underline
5==闪烁
7==反白显示
8==不可见
7最终配置
1
PS1='\[\e[1;35m\]\u@\h:\[\e[0m\]\[\e[1;33m\]\w\[\e[1;35m\]\[\e[0m\]\[\e[1;34m\]\$\[\e[0m\]'
说明如下:
\[\e[1;35m\]\u@\h:\[\e[0m\]:洋红色高亮显示用户@主机
\[\e[1;33m\]\w\[\e[1;35m\]\[\e[0m\]:黄色高亮显示当前工作目录
\[\e[1;34m\]\$\[\e[0m\]:如果您不是超级用户(非root),则插入一个“$”;如果您是超级用户(root),则显示一个“#”,蓝色高亮显示
8修改.bashrc文件
通过上面的设置只能改变当前终端的命令行格式,关闭这个终端,在重新打开的一个终端中命令行格式又会恢复到默认的形式。想要永久性的改变终端命令行格式,需要修改.bashrc文件。
使用命令:
cd~
ls-al
就能看到.bashrc这个文件,如下图所示:
使用命令
gedit.bashrc
在.bashrc文件中加入
PS1='\[\e[1;35m\]\u@\h:\[\e[0m\]\[\e[1;33m\]\w\[\e[1;35m\]\[\e[0m\]\[\e[1;34m\]\$\[\e[0m\]'
这条语句,然后保存,就可以永久性的改变终端命令行格式了。
|