Prompt
TCSH 提示顯示有關缺少括號的語法錯誤
我已經
prompt
使用以下程式碼在我的機器上設置了:set prompt = " %B%{\033[34m%}`hostname`: %c %D/%w %p :) %b"
它輸出我喜歡的自定義顯示。看起來像 :
但是,當我發出
echo $prompt
命令時,它會返回missing ]
. 我相信我確實正確地參考了定製手冊。
您遇到了 tcsh 的解析怪癖之一。從tcsh 手冊:
變數替換 除非包含在 ‘"’ 中或給定 ‘:q’ 修飾符,否則變數替換的結果最終可能會被命令和文件名替換。
您有一個變數擴展為語法上不正確的文件名替換。
echo "$prompt"
您可以通過鍵入或來防止這種替換echo $prompt:q
。例子:
% set prompt = " %B%{\033[34m%}`hostname`: %c %D/%w %p :) %b" host.example.com: ~ 12/Dec 9:46:12am :) echo $prompt:q | cat -v %B%{^[[34m%}host.example.com: %c %D/%w %p :) %b