博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
个性化PS1变量
阅读量:7075 次
发布时间:2019-06-28

本文共 1730 字,大约阅读时间需要 5 分钟。

hot3.png

##PS1是个啥? 鸟哥的书中关于PS1这么说的:

这是 PS1 (数字的 1 不是英文字母),这个东西就是我们的『命令提示字符』喔! 当我们每次按下 [Enter] 按键去运行某个命令后,最后要再次出现提示字符时, 就会主动去读取这个变量值了。上头 PS1 内显示的是一些特殊符号,这些特殊符号可以显示不同的信息, 每个 distributions 的 bash 默认的 PS1 变量内容可能有些许的差异,不要紧,『习惯你自己的习惯』就好了。 你可以用 man bash (注3)去查询一下 PS1 的相关说明,以理解底下的一些符号意义。

总结来说,这个环境变量主要控制这命令提示符(也就是终端里的wgjak47@wgjak47-M410:~$)的样式。 ubuntu下这个变量值默认为\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$ 而其中{debian_chroot:+($debian_chroot)} 这句的意思是说,如果在/etc下有debian_chroot文件,则命令提示符前面就附加上debian_chroot文件的内容。关于:+这个语法的可以参考:[linux bash shell之变量替换][]

根据man page,PS1的常用的变量值有以下项:

\a 一个 ASCII 响铃字符 (010)

\d 日期,格式是 "星期 月份 日" (例如,"Tue May 26")
\D{format}
format 被传递给 strftime(3),结果被插入到提示字符串中; 空的 format 将使用语言环境特定的时间格式。花括号是必需的
\e 一个 ASCII 转义字符 (033)
\h 主机名,第一个 `.' 之前的部分
\H 主机名
\j shell 当前管理的作业数量
\l shell 的终端设备名的基本部分
\n 新行符
\r 回车
\s shell 的名称, $0 的基本部分 (最后一个斜杠后面的部分)
\t 当前时间,采用 24小时制的 HH:MM:SS 格式
\T 当前时间,采用 12小时制的 HH:MM:SS 格式
@ 当前时间,采用 12小时制上午/下午 (am/pm) 格式
\A 当前时间,采用 24小时制上午/下午格式
\u 当前用户的用户名 the username of the current user
\v bash 的版本 (例如,2.00)
\V bash 的发行编号,版本号加补丁级别 (例如,2.00.0)
\w 当前工作目录
\W 当前工作目录的基本部分
! 此命令的历史编号
# 此命令的命令编号
$ 如果有效 UID 是 0,就是 #, 其他情况下是 $
\nnn 对应八进制数 nnn 的字符
\ 一个反斜杠
[ 一个不可打印字符序列的开始,可以用于在提示符中嵌入终端控制序列
] 一个不可打印字符序列的结束
通过设置PS1变量可以得到你希望的提示符样式。

更进一步:彩色化 这个其实没什么太大用处,只是让提示符更好看一些。 PS1环境变量支持以下色彩和特效:

颜色表

前景 背景 颜色

30 40 黑色

31 41 红色
32 42 绿色
33 43 黄色
34 44 蓝色
35 45 紫色
36 46 青色
37 47 白色

代码 意义

0 OFF

1 高亮显示
4 underline
5 闪烁
7 反白显示
8 不可见

使用方法:

在PS1中配置字符序列颜色的格式为:

[\e[F;Bm]

基本上是夹在 "\e["(转义开方括号)和 "m" 之间数字值。假如指定一个以上的数字代码,则用分号将他们分开。

其中 F 为字体颜色,编号30~37; B 为背景色,编号40~47。

可通过 \e[0m 关闭颜色输出;特别的,当B为1时,将显示加亮加粗的文字,请看下面的颜色表和代码表。

例: export PS1="\[\e[32;1m\]\u@\[\e[32;1m\]\H\$ \[\e[0m\]"

转载于:https://my.oschina.net/u/1242185/blog/357363

你可能感兴趣的文章
带有滚动监听的ScrollView
查看>>
我的友情链接
查看>>
23种设计模式
查看>>
安装cacti可能出现的问题
查看>>
应用程序迁移到云平台的最佳实践
查看>>
类似qq的IM聊天应用源码
查看>>
华赛防火墙USG2210 L2TP over IPsec×××配置实例
查看>>
log4j2基本操作
查看>>
mqtt
查看>>
我的友情链接
查看>>
PDF格式详解
查看>>
我的PGA我作主----搞清楚什么是真正的PGA
查看>>
html取出指定div的内容(不怕嵌套)
查看>>
Windows Server 2012的服务管理自动化 -启动类型设置,手动启动还是自动启动
查看>>
Chrome浏览器调用摄像头拍照
查看>>
表空间在dba_tablespaces中存在,删除时却提示无法删除
查看>>
secure shell(SSH)
查看>>
我的友情链接
查看>>
探秘varian:优雅的发布部署程序
查看>>
shell脚本(1)
查看>>