修改linux命令提示符的方法

来源:互联网 发布:华气厚普数据导出 编辑:程序博客网 时间:2024/06/04 08:40
修改linux命令提示符的方法

修改linux命令提示符的方法:
修改linux的命令提示符即修改linux的环境变量PS1,可以使用vi编辑/etc/profile文件,在最后加上:
export PS1=’[\u@\h \W]\$ ’
也可以编辑~/.profile文件(注意开头一行 #/etc/profile ~/.profile)
即可,其中\u显示当前用户账号,\h显示当前主机名,\W显示当前路径,\$显示’$’符号
\W 代替 \w 就可以实现绝对路径到相对路径的转换
下面简单说说环境下默认的特殊符号所代表的意义:
\d :代表日期,格式为weekday month date,例如:"Mon Aug 1"
\H :完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux
\h :仅取主机的第一个名字,如上例,则为fc4,.linux则被省略
\t :显示时间为24小时格式,如:HH:MM:SS
\T :显示时间为12小时格式
\A :显示时间为24小时格式:HH:MM
\u :当前用户的账号名称
\v :BASH的版本信息
\w :完整的工作目录名称。家目录会以 ~代替
\W :利用basename取得工作目录名称,所以只会列出最后一个目录
\# :下达的第几个命令
\$ :提示字符,如果是root时,提示符为:# ,普通用户则为:$

还有一个问题,修改过.profile/profile 文件之后,怎么样才能应用改变呢?

我们可以使用以下命令

source /etc/profile   or    source /etc/home/user/.profile
 
 
 
 
 
 
 

改变title

PROMPT_COMMAND='echo -ne "/033]0;${USER}@${HOSTNAME}: ${PWD}/007"'这样在terminal的title就会显示用户@机器名:路径。

改变命令提示符的颜色:

在~/.bashrc中添加:(绿色)

export PS1="/[/033[32m/][/w]/$/[/033[0m/] “

在/root/.bashrc:(红色)

export PS1="/[/e[31m/][/w]#/[/e[0m/] “

NOTICE:

1. /033[32m 表示后面的字符要用绿色。/033 也可用/e(0m,表示用default。30(黑色)、31(红色)、32(绿色)、 33(黄色)、34(蓝色)、35(洋红)、36(青色)、37(白色)。

2. /[ 和 /] 对于每个颜色参数,都要用着两个转义符包起来。至少字Ubuntu上,必须这么设置。

3. /$好像不怎么起作用,当sudo到root用户时,仍然显示$,理想是#。所以可以直接用$,不用转义/$

PS:

  • /a : an ASCII bell character (07)
  • /d : the date in "Weekday Month Date" format (e.g., "Tue May 26")
  • /D{format} : the format is passed to strftime(3) and the result is inserted into the prompt string; an empty format results in a locale-specific time representation. The braces are required
  • /e : an ASCII escape character (033)
  • /h : the hostname up to the first '.'
  • /H : the hostname
  • /j : the number of jobs currently managed by the shell
  • /l : the basename of the shell’s terminal device name
  • /n : newline
  • /r : carriage return
  • /s : the name of the shell, the basename of $0 (the portion following the final slash)
  • /t : the current time in 24-hour HH:MM:SS format
  • /T : the current time in 12-hour HH:MM:SS format
  • /@ : the current time in 12-hour am/pm format
  • /A : the current time in 24-hour HH:MM format
  • /u : the username of the current user
  • /v : the version of bash (e.g., 2.00)
  • /V : the release of bash, version + patch level (e.g., 2.00.0)
  • /w : the current working directory, with $HOME abbreviated with a tilde
  • /W : the basename of the current working directory, with $HOME abbreviated with a tilde
  • /! : the history number of this command
  • /# : the command number of this command
  • /$ : if the effective UID is 0, a #, otherwise a $
  • /nnn : the character corresponding to the octal number nnn
  • // : a backslash
  • /[ : begin a sequence of non-printing characters, which could be used to embed a terminal control sequence into the prompt
  • /] : end a sequence of non-printing characters
 
 
 
 
原创粉丝点击