LinuxUnix中的命令提⽰符prompt
⽤惯了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的语义,使其⾃动修改提⽰符:
aliastprompt'tprompt="${cwd}%"'
tprompt#tottheinitialprompt
aliascd'chdir!*&&tprompt'bash:
bash提供了⼀些特殊的变量来⽀持提⽰符的设置,w表⽰当前路径,并把
等同于$HOME的部分替换成~,以缩短提⽰符的长度。PS1='w$'
Linux中是把hostname也加上了班主任工作目标 :PS1='h:w$'#h表⽰hostname
为了更象DOS,可以把不同的命令分得更清楚,我通常加上⼀个换⾏符:
PS1='
h:w$'tcsh:
tcsh的做法类祝词 似于bash,只不过变量的名字不同:
tprompt='%~'#%~表⽰当前路径Samp自主招生面试 le:
Solaris中的不同做法:如何在命令⾏显⽰⽬录?
⽤惯了DOS的伙计刚⽤Unix时最想⼲的事情就是想把Unix搞得像DOS⼀些,
其中的⼀条就是把Unix的提⽰符设置成$p$g那样的。下⾯就说⼀说做的⽅法。
不同的SHELL设置的⽅法不同,⽐较⽅便的是GNUbash(BourneAgainShell)
和ksh(KornShell)以及tcsh(c电脑老是死机 sh的增强版,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的语义,使其⾃动修改提⽰符:
aliastprompt'tprompt="${cwd}%"'
tprompt#tottheinitialprompt
aliascd'chdir!*&&tprompt'bash:
bash提供了⼀些特殊的变量来⽀持提⽰符的设置,w表⽰当前路径,并把
等同于$HOME的部分替换成~,以缩短提⽰符的长度。PS1='w$'
Linux中是把hostname也加上了:
PS1='h:w$'#h表⽰hostname
为了更象DOS,可以把不同的命令分得更清楚,我通常加上⼀个换⾏符:
PS1='
h:w$'tcsh:
tcsh的做法类似于bash,只不过变量的名字不同:tprompt='%~'#%~表⽰当前路径
本文发布于:2023-04-14 02:11:25,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/fan/90/93230.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |