龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 操作系统 > LINUX系统 >

如何在bash里设置用户提示符

时间:2011-03-20 22:37来源:未知 作者:admin 点击:
分享到:
bash 有两级用户提示符。第一级是你经常看到的 bash 在等待命令输入时的提示符。缺省的一级提示符是字符$(如果是超级用户,则是#号)。你可以通过改变bash 的PS1变量的值来改变你的

  bash 有两级用户提示符。第一级是你经常看到的 bash 在等待命令输入时的提示符。缺省的一级提示符是字符$(如果是超级用户,则是#号)。你可以通过改变bash 的PS1变量的值来改变你的缺省提示符,例如: PS1="Please enter a command" 把bash shell 的提示符该为指定的字符串。 

  

  当bash 期待输入更多的信息以完成命令时显示第二级提示符。缺省的第二级提示符是 >。 果你要改变第二级提示符,可以通过设置PS2变量的值来实现: 

  PS2="I need more information" 

  另外你还可以用特殊的字符来定义你的提示符,下面的列表列出了最常用的特殊字符。 

  提示符特殊字符代码

  字符 含义 

  \! 显示该命令的历史记录编号。 

  \# 显示当前命令的命令编号。 

  

  \$ 显示$符作为提示符,如果用户是root的话,则显示#号。 

  \\ 显示反斜杠。 

  

  \d 显示当前日期。 

  

  \h 显示主机名。 

  

  \n 打印新行。 

  \nnn 显示nnn的八进制值。 

  

  \s 显示当前运行的shell的名字。 

  \t 显示当前时间。 

  \u 显示当前用户的用户名。 

  \W 显示当前工作目录的名字。 

  \w 显示当前工作目录的路径。 

  

  这些特殊字符能组合成很多种有用的提示符方案(也可以组合为很奇异的方案),例如把 PS1 设为: 

  PS1="\t" 

  这导致提示符显示当前的时间,就象下面的显示一样(提示符后面将不会有空格): 

  02:16:15 

  

  而下面的设置: 

  PS1=\t 

  将导致提示符变成下面的样子: 

  t 

  这显示了设置中引号的重要性,下面的提示符串: 

  PS1="\t\\ " 

  会使提示符看起来象这个样子: 

  02:16:30\ 

  这种情况下,提示符后面会有一个空格,因为引号里有一个空格。

精彩图集

赞助商链接