^[
的按键顺序,我们将不胜感激。答案 0 :(得分:1)
可以使用反斜杠序列\e
在解释反斜杠序列的命令中生成转义键。
例如:
echo -e "Text can be \e[1;41mred\e[m or \e[1;45mmagenta\e[m"
for back in {30..37}; do
echo -n $back:
for fore in {40..47}; do
printf "\e[1;%2d;%2dm%2d\e[m " $back $fore $fore
done
printf "\n"
done
上面未说明的可能性是bash转义解释字符串:$'\e[1m'
。
尽管使用vt转义序列(如上所述)很容易并且大多数(如果不是所有常用的)unix终端仿真器都支持,顽固分子会坚持你学会使用tput
命令:
printf "Here is a %sbold red%s word\n" "$(tput bold)""$(tput setf 4)" "$(tput sgr0)"
恕我直言,弄清楚魔法输出符号(参见debian / ubuntu系统上的man 5 terminfo
)并不像查找xterm控制序列那样容易(谷歌最后三个字),但是YMMV。