CentOS系列的系统默认提示符都不显示全路径,有时候需要使用当前目录的绝对路径还要敲个pwd,不喜欢。之前使用SUSE系统默认是显示全路径的,所以还是改成全路径吧。
其实这个命令提示符格式是由PS1这个环境变量控制的,所以我们可以通过修改这个变量来达到我们的目的。
修改如下:
[root@localhost sh]# echo $PS1
[\u@\h \W]\$
[root@localhost sh]# export PS1='[\u@\h \w]\$'
[root@localhost /home/sh]#
这个是即时生效的,所以如果要重启或者重新打开窗口也生效的话就要把这个导出动作放到/etc/profile里。
echo "export PS1='[\u@\h \w]\$ '" >> /etc/profile
或者直接修改系统初始设置PS1的地方,系统会在/etc/bashrc里设置该变量。找到如下代码,将大写的W改为小写即可。
#[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ "
[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \w]\\$ "
关于PS1各个字段的含义如下:
\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时,提示符为:# ,普通用户则为:$
参考资料:
1、http://soft.chinabyte.com/os/69/11737069.shtml
网友评论