我们使用Linux系统时接触多的是它的命令行窗口,很多时候我们都需要在命令行上输入命令,在输入的命令前都会有提示符,一般系统默认的提示符形式是:[username@host 工作目录]$。 其实,我们可以为自己订制个性化的命令行提示符,Linux系统提示符是用系统变量PS1来定义的,只要按规则修改PS1系统变量的值随意修改命令行提示符。 通过命令echo $PS1查看PS1的值,即PS1="[u@h: w ]$ "。修改PS1的值后,重启系统或者重新登录后,PS1的值都会变回默认的值。如果希望对用户保存PS1的值,可以通过修改用户配置文件.profile,把系统变量PS1的新值重新导入: PS1="["u@"h "w]"$" PATH=$PATH:$HOME/bin #使用export把PS1输出,以使它可以在子shell中生效,这会造成ROOT用户的也采用此样式 #export PS1 要慎用 export PATH 下面简单说说环境下默认的特殊符号所代表的意义: d :代表日期,格式为weekday month date,例如:"Mon Aug 1" H :完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称是fc4.linux h :仅取主机的第一个名字,如上例,则为fc4,.linux则被省略 :显示时间为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。 可通过``"e[0m''关闭颜色输出;特别的,当B为1时,将显示加亮加粗的文字,详细请看下面的颜色表与代码表。 颜色表 前景 背景 颜色 --------------------------------------- 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在~/.bahrc指定即可,比如我的设置如下: 设置一: PS1=""["e[32m"][u@h w] $"["e[m"]" export PS1 效果: [wolfbe@test ~]$ 设置二: if [ $TERM = 'linux' ]; then export PS1="["["e[36;1m"]"u@"h "["e[31;1m"]"w"["e[32;1m"]]> " zhcon --utf8 clear elif [ $TERM = "xterm" ]; then export PS1="["["e[31;1m"]"w"e[0m]> " fi