Bash
將評估的提示佔位符列印到螢幕上
有沒有辦法將解釋的 PS1 變數佔位符列印到控制台?就像是
$ echo `%u`
用於列印使用者名或
$ echo `%h`
用於列印主機。我確實知道環境變數,我只想知道是否有辦法通過
PS1
變數獲取相同的資訊。
在 zsh 中,使用
%
參數擴展標誌。tmp='%n@%m'; echo ${(%)tmp}
在 bash 中,似乎沒有一個簡單的方法,但有一個偷偷摸摸的方法:
tmp=$(set +x; (PS4='+.\u@\h'; set -x; :) 2>&1); tmp=${tmp#*.}; echo ${tmp%:}
在 tcsh 中,我認為沒有辦法。(但是這些天誰使用 (t)csh 呢?)