bat*_*a13 4 macos bash prompt ps1
使用脚本,我要更改父级Bash shell的提示。我尝试了以下方法:
PS1="Hello World > "
Run Code Online (Sandbox Code Playgroud)
这将更改运行脚本的子外壳的提示符,但是我将使用哪个命令来更改父外壳的提示符。有任何想法吗?
在所有情况下,父外壳必须配合。UNIX环境中的子进程如果没有其合作关系就无法影响父进程。
在subshell脚本中尝试一下changePrompt.sh:
echo 'PS1="Hello World > "'
Run Code Online (Sandbox Code Playgroud)
然后像这样从父shell调用脚本:
eval "$(changePrompt.sh)"
Run Code Online (Sandbox Code Playgroud)
或者,采用另一种方法:源代码脚本而不是调用脚本。 changePrompt.sh:
PS1="Hello World > "
Run Code Online (Sandbox Code Playgroud)
这样称呼它:
source changePrompt.sh
Run Code Online (Sandbox Code Playgroud)
或者简单地:
. changePrompt.sh
Run Code Online (Sandbox Code Playgroud)