我想从命令行更改xterm的颜色(背景,字体,前景)。我听说这可以使用ANSI转义序列来完成。
如果可能的话:
ANSI转义序列由一个以Escape字符27开头的字符序列组成。下一个字符通常(尽管不总是)是一个方括号:[
如果您指定-e
并\e
用于转义,echo命令可以发送转义字符。
ANSI标准定义了8种颜色,以及明亮模式,总共提供了16种可能性。顺序为:
\e[<number>m
其中<number>
之一是:
前景:
背景:
47白色
0全部重置
因此,将前景设为红色,将背景设为黄色:
$ echo -e "\e[31m\e[43m"
并启用粗体:
$ echo -e "\e[1m"
当然,您可以将它们全部组合在一起:
$ echo -e "\e[31m\e[43m\e[1m"
还有许多其他用于执行其他操作的转义代码。
例如-清除屏幕并将光标移到左上角:
$ echo -e "\e[2J\e[1;1H"
更改颜色时,这很有用:
$ echo -e "\e[31m\e[43m\e[1m\e[2J\e[1;1H"
这将更改颜色,清除屏幕,然后将光标放在左上角。好吧,几乎是左上角。回声将回车放回去,因此它向下移动了一行。-n
如果您很挑剔,可以添加回显以防止这种情况。
如果您将所有内容弄乱了,但看不到您要输入的内容,则可以通过按以下键将终端颜色重置为正常颜色:
Ctrl+v [ 0 m Return
您希望的是命令提示符。它会发出有关未知命令的提示,但是您将能够再次看到正在执行的操作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句