Bash

將評估的提示佔位符列印到螢幕上

  • July 27, 2011

有沒有辦法將解釋的 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 呢?)

引用自:https://unix.stackexchange.com/questions/17454