
tput sgr0
サブシェルの使用を防ぐには、ANSI互換端末に対応するANSIエスケープは何ですか?
答え1
出力を見ると、この質問に答えることができます。infocmp
:使用-1
特定の設定に対して、1行に1つの機能のオプションを印刷します。TERM
(例:「ansi」)、簡略化grep
:
infocmp -1 ansi |grep sgr0=
(例えば)
sgr0=\E[0;10m,
これはあなたができることを教えてくれます
printf '\033[0;10m'
以下の効果を得る。
tput -T ansi sgr0
しかし、あなたは使わなかった米国国立標準協会しかし、いくつかの特定の端末があり、使用する端末が似ていても、すべての端末が同じではありません。あなたの状況は次のようになる可能性が高くなります。TERM
変数は「xterm」と同じ値に設定されます(端末タイプは省略)。
sgr0=\E(B\E[m,
共通点は\E[m
、これはterminfo構文です\033[m
。各シーケンスの追加文字は代替文字セットをリセットします(端末の種類によって異なります)。