http://ascii-table.com/ansi-escape-sequences-vt-100.php
上表显示Esc[2K
清除一行。
但是在Mac Terminal上,我看不到该行已清除。
$ echo abc$'\e[2k'
abc
TERM变量如下。
$ declare -p TERM
declare -x TERM="xterm-256color"
有人清除线吗? (如果可能,它应该可以在Mac Terminal以外的其他终端上运行。)谢谢。
答案 0 :(得分:1)
我只是打个小错号,因为与清除一行相关的转义序列是Esc[2K
,大写字母K
而不是k
echo -e abc$'\e[2K'
应能按预期工作。请注意,echo -e
和ANSI C样式转义符($'...'
)是bash
特定于Shell的并且不符合POSIX。您始终可以使用也支持转义序列的printf()
printf abc'\e[2K'
\e
的所有版本也可能不支持转义符echo
,但仅提供内置的bash
。您可以将\e
的十六进制等值用作\x1B
或八进制的\033
。