bash:PROMPT_COMMAND不执行多个命令,单个命令工作

时间:2016-04-16 16:33:58

标签: bash shell

在〜/ .bashrc中 假设我有一个功能说,

function my_function {  
echo "Test:I am in myfunc"  
}  
  • 如果我独自一人 export PROMPT_COMMAND='echo -ne "\033]0;${PWD##*/}\007"'
    然后工作正常。
  • 如果我这样做 export PROMPT_COMMAND="my_function;$PROMPT_COMMAND"
    那就行了。

  • 但如果我这样做 export PROMPT_COMMAND="'echo -ne "\033]0;${PWD##*/}\007"';my_function;$PROMPT_COMMAND"
    然后它不会设置选项卡名称或调用my_function Plz帮助..

1 个答案:

答案 0 :(得分:3)

啊,是的,有时那些嵌套的单引号/双引号可能会变得困难。为什么不尝试将第一个命令(将选项卡名称设置为当前目录)移动到my_function。所以试着把它放到〜/ .bashrc中:

function my_function {
    echo -ne "\033]0;${PWD##*/}\007"
    echo "Test:I am in myfunc"
}

export PROMPT_COMMAND="my_function;$PROMPT_COMMAND"