加入收藏 | 设为首页 | 会员中心 | 我要投稿 威海站长网 (https://www.0631zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Unix > 正文

Linux/Unix中的命令提示符prompt

发布时间:2022-10-25 18:31:22 所属栏目:Unix 来源:互联网
导读: 用惯了DOS的伙计刚用Unix时最想干的事情就是想把Unix搞得像DOS一些,
其中的一条就是把Unix的提示符设置成$p$g那样的。下面就说一说做的方法。
不同的SHELL设置的方法不同,比较方便的是GN

用惯了DOS的伙计刚用Unix时最想干的事情就是想把Unix搞得像DOS一些,

其中的一条就是把Unix的提示符设置成$p$g那样的。下面就说一说做的方法。

不同的SHELL设置的方法不同,比较方便的是GNUbash(BourneAgainShell)

和ksh(KornShell)以及tcsh(csh的增强版,Linux中的csh就是到tcsh的一个

符号连接)。普通的sh(BourneShell)和csh设置比较罗嗦。下面就一个一个的

说各种Shell的设置方法:

ksh:

由于ksh把提示符变量PS1作为一个特殊的变量看待,cd的时候ksh会自动更

新PS1的值所以只要简单的把当前路径对应的环境变量$PWD加到PS1里就行了:

PS1='$PWD$'

sh:

由于BourneShell只把PS1作为一个普通的变量,而且不支持别名,因此无

法完美地实现DOS中相同的功能,解决的方法是重新定义一个命令(比如xcd)

将其实现为一个函数:

xcd(){cd$*;PS1="`pwd`$";}

然后每次用xcd切换目录。

csh:

csh虽然不对提示符变量$prompt作特殊处理,但它支持别名,可以修改一下

cd的语义,使其自动修改提示符:

aliassetprompt'setprompt="${cwd}%"'

setprompt#tosettheinitialprompt

aliascd'chdir\!*&&setprompt'

bash:

bash提供了一些特殊的变量来支持提示符的设置,\w表示当前路径,并把

等同于$HOME的部分替换成~,以缩短提示符的长度。

PS1='\w$'

Linux中是把hostname也加上了:

PS1='\h:\w$'#\h表示hostname

为了更象DOS,可以把不同的命令分得更清楚,我通常加上一个换行符:

PS1='

\h:\w$'

tcsh:

tcsh的做法类似于bashUNIX 特殊变量,只不过变量的名字不同:

setprompt='%~'#%~表示当前路径

Sample:

Solaris中的不同做法:如何在命令行显示目录?

用惯了DOS的伙计刚用Unix时最想干的事情就是想把Unix搞得像DOS一些,

其中的一条就是把Unix的提示符设置成$p$g那样的。下面就说一说做的方法。

不同的SHELL设置的方法不同,比较方便的是GNUbash(BourneAgainShell)

和ksh(KornShell)以及tcsh(csh的增强版,Linux中的csh就是到tcsh的一个

符号连接)。普通的sh(BourneShell)和csh设置比较罗嗦。下面就一个一个的

说各种Shell的设置方法:

ksh:

由于ksh把提示符变量PS1作为一个特殊的变量看待,cd的时候ksh会自动更

新PS1的值所以只要简单的把当前路径对应的环境变量$PWD加到PS1里就行了:

PS1='$PWD$'

sh:

由于BourneShell只把PS1作为一个普通的变量,而且不支持别名,因此无

法完美地实现DOS中相同的功能,解决的方法是重新定义一个命令(比如xcd)

将其实现为一个函数:

xcd(){cd$*;PS1="`pwd`$";}

然后每次用xcd切换目录。

csh:

csh虽然不对提示符变量$prompt作特殊处理,但它支持别名,可以修改一下

cd的语义,使其自动修改提示符:

aliassetprompt'setprompt="${cwd}%"'

setprompt#tosettheinitialprompt

aliascd'chdir\!*&&setprompt'

bash:

bash提供了一些特殊的变量来支持提示符的设置,\w表示当前路径,并把

等同于$HOME的部分替换成~,以缩短提示符的长度。

PS1='\w$'

Linux中是把hostname也加上了:

PS1='\h:\w$'#\h表示hostname

为了更象DOS,可以把不同的命令分得更清楚,我通常加上一个换行符:

PS1='

\h:\w$'

tcsh:

tcsh的做法类似于bash,只不过变量的名字不同:

setprompt='%~'#%~表示当前路径

(编辑:威海站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!