关于设置命令行提示符(PS1)

王朝other·作者佚名  2008-05-18
宽屏版  字体: |||超大  

将提示符(PS1)设置成当前的路径,但不包括 $HOME

比如:

$HOME=/usr/wuhq

$PWD=/usr/wuhq/src

我想让提示符为:

src>

如果$PWD=/opt/java

我想让提示符为:

/opt/java>

以前看到过相关贴子,但找不着了

先谢过大虾!

In Korn Shell ,use:

PS1='${PWD##${HOME}}/>'

尊敬的斑竹:

好像不行唉!

而且有明显的错误嘛!

我改成

PS1='${PWD}##${HOME}/>'

也不行啊

输出:

/usr/users/weblogic/weblogic##/usr/users/weblogic/>

我用的是

Digital UNIX(好像是)

尊敬的taige:

是被论坛自动替换了,不是笔误。

应该这样写,偶试过了:(注意,偶用的是全角字符)

PS1='${PWD##${HOME}}/>'

斑竹多谢了

能否再进一步

如我提的第一个要求

$HOME=/usr/wuhq

$PWD=/usr/wuhq/src

我想让提示符为:

src>

而现在的情况下会显示为:

/src>

即我想把"/"去掉,否则容易引起误会

yes!

i have done!

PS1='${PWD##"${HOME}/"}>'

不知道斑竹是否就这个问题还有兴趣

现在我遇到的情况是这样:

$HOME=/a/very/long/home/path

我用上面的方法:

PS1='${PWD##${HOME}/}>'

则我在$HOME目录时提示符为:

/a/very/long/home/path>

进入子目录src,提示符为:

src>

我希望在$HOME目录时提示符为:

>

该怎么办?

你把两个}中间的/去掉便可以啊。

那样的话就出现了我先前说的那种情况

在子目录src时,提示符:

/src>

我不想要这个"/"

我希望第一个字符不是"/"

除非不在$HOME及其子目录中

二者只能择其一。

你的要求用${...##...}形式不行。

OK!

我放弃

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有