问题:怎么把shell 的显示方式为 [username@host 完整工作目录]$ 改为[username@host 最后工作目录]$
解决:在.bashrc 中加入 export PS1='[/u@/h /W]/$'
说明:
控制linux下系统提示符有两个变量,PS1,PS2,其中PS1就是系统提示符,一般格式为: [username@host 工作目录]#,即用户名+主机名(一般为IP)+当前工作目录(可以之列出最后一个目录,也可以全部列出目录)+#(root用户是#,一般用户是$)。 PS2第一行没输完,等待第二行输入的提示符。一般为>。
先用echo来显示下PS1的参数,echo $PS1 ,结果为/ s- /v / $(我在中间加了空格)。根据环境变量下字符的定义:
/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时,提示符为:# ,普通用户则为:$