Shell

Unix Shell 和顏色

  • November 25, 2018

我需要了解我在 .profile 文件中找到的這段程式碼片段

echo -en "\e[32;44m $(hostname) \e[m";echo -e "\e[m"

此程式碼段用於列印出系統的主機名,背景為藍色,字型為綠色。

要為 shell 著色,請使用特殊的顏​​色轉義序列。

\e[開始配色方案,32;將前景色設置為綠色,44將背景色設置為藍色並m結束。

$(command)創建一個新的 shell,執行命令並返回結果(不是返回值)。

hostname返回目前系統的主機名。

\e[m將重置輸出的顏色。

從迴聲手冊頁:

   -n     do not output the trailing newline
   -e     enable interpretation of backslash escapes

恕我直言,您的程式碼段可以簡化為 echo -e "\e[32;44m $(hostname) \e[m";

有關詳細資訊,請參閱第6.1 章 BASH Prompt HOWTO的顏色。

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