标签:
十年运维系列之基础篇 - Linux
作者:曾林
联系:1494445739@qq.com
版权:文章未经同意请勿转载
一、引言
本小节将讲解一个Linux shell的小特性:shell提示符。和Linux中很多程序一样,shell提示符的可配置型很高。通过介绍,我们会发现shell和终端仿真器程序的内部工作机制。
二、提示符的分解
系统的默认提示符看起来如下所示:

可以看到提示符中包含了用户名、主机名和当前的工作目录。提示符是由名为PS1(prompt string 1的缩写,即提示符字符串1)的环境变量定义的。注意:如果输出的结果同上图范例不同,也不需要担心。每一个Linux发行版本对此提示符字符串的定义都会有所不同,有一些甚至定义得很奇怪。
由上图可以看出,PS1包含了一些提示符中出现的符号,比如方括号、@符号和$符号,但是其余的部分则令人困惑。下图将具体解释一下shell提示符中使用的转义字符。
| 转义字符 | 含义 |
| \a | ASCII铃声。在遇到该转义字符时,计算机将发出哗哗声 |
| \d | 当前日期,以星期、月、日的形式表示,如“Mon May 26” |
| \h | 本地机器的主机名,但是不带域名 |
| \H | 完整的主机名 |
| \j | 当前shell会话中进行的任务个数 |
| \l | 当前终端设备的名称 |
| \n | 换行符 |
| \r | 回车符 |
| \s | shell程序的名称 |
| \t | 当前时间(24小时制),格式为小时:分钟:秒 |
| \T | 当前时间(12小时制) |
| \@ | 当前时间(12小时制,格式为AM/PM) |
| \A | 当前(24小时制),格式为小时:分钟 |
| \u | 当前用户的用户名 |
| \v | shell的版本号 |
| \V | shell的版本号和发行号 |
| \w | 当前工作目录名 |
|
\W |
当前工作目录名称的最后一部分 |
| \! | 当前命令的历史编号 |
| \# | 当前shell会话中输入的命令数 |
| \$ | 在非管理员权限下输出“$”。在管理员权限下输出“#” |
| \[ | 标志一个或多个非打印字符序列的开始。用于签入非打印的控制字符,使其以一定方式操作终端仿真器,比如移动光标或更改文本颜色 |
| \] | 标志着非显示字符序列的结束 |
标签:
原文地址:http://www.cnblogs.com/jplatformx/p/4308952.html