快速业务通道

Linux下bash的PS1

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-03-30

昨天和一个朋友聊天,他说自己在用Ubuntu的时候会有这样一个困惑:在bash下使用cd命令,进入一些很深的目录后,或者说那些目录名非常长的目录后,bash的命令提示符就特别的长,以至于每个命令都会换行

hadoop-mapred@hdp32:/etc/opt/directorynameisfuckingsolong/my/name/is/spazzzz$

类似于上面这种情况... 这种情况就是bash的命令提示符变量PS1的问题了,这里的PS1使用的是完整的路径名:
  1. echo $PS1
  2. \[\e]0;\u@\h: \w\a\]${debian_chroot: ($debian_chroot)}\u@\h:\w\$
在这里对上述描述情况发挥作用的是\w这个参数,它表示显示完整路径 如果只想显示当前路径的话,将w改成W,问题就解决了!(至于在哪里修改,这个需要看linux的发行版了,有些在/etc/profile中,有些在~/.bash_profile中) 像刚才那种情况,显示就变成

hadoop-mapred@hdp32:spazzzz$

这样是不是就好多了.

PS:一些变量意义

\d :代表日期,格式为weekday month date,例如:"Mon Aug 1" \H :完整的主机名称.名称就是fc4.linux \h :仅取主机的第一个名字,如上例,则为fc4,.linux则被省略 \t :显示时间为24小时格式,如:HH:MM:SS \T :显示时间为12小时格式 \A :显示时间为24小时格式:HH:MM \u :当前用户的账号名称 \v :BASH的版本信息 \w :完整的工作目录名称.家目录会以 ~代替 \W :利用basename取得工作目录名称,只会列出一个目录 \# :下达的第几个命令 \$ :提示字符,如果是root时,提示符为:# ,普通用户则为: {debian_chroot: ($debian_chroot)} 这句的意思是说,如果在/etc下有debian_chroot文件,则命令提示符前面就附加上debian_chroot文件的内容.

本文出自 “春种一粒粟” 博客,请务必保留此出处http://spazzzz.blog.51cto.com/2707720/614112

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号