Ven*_*oth 4 bash prompt command-prompt .bash-profile ps1
我想知道是否可以根据当前路径或pwd值更改PS1?
例如:
cd /home/user/directory1
PS1=[\e[1;32m\u\e[m@\e[1;34m\h\e[m \e[1;33m\W\e[m]
Run Code Online (Sandbox Code Playgroud)
但如果我在另一个目录中:
cd /home/user/thisdirectory
PS1=[\w]
Run Code Online (Sandbox Code Playgroud)
先感谢您!
Sri*_*uru 12
您可以使用此代码.
[user1@myhost ~]myfunc() { DIR=`pwd`;if [ "$DIR" = "/home/user1" ]; then export PS1="[\e[1;32m\u\e[m@\e[1;34m\h\e[m \e[1;33m\W\e[m]" ;else export PS1="[\w]";fi; }
[user1@myhost ~]PROMPT_COMMAND="myfunc"
[user1@myhost ~]cd /tmp
[/tmp]cd
[user1@myhost ~]cd /etc
[/etc]cd
[user1@myhost ~]
Run Code Online (Sandbox Code Playgroud)
当我更改目录时,提示会发生变化.
在PROMPT_COMMANDbash的变量是你在找什么:
PROMPT_COMMAND
If set, the value is executed as a command prior to issuing
each primary prompt.
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3566 次 |
| 最近记录: |