ANSI色を含むファイルがあります。
テスト.txt:
\e[0;31mExample\e[0m
そのファイルの内容を端末に表示したいのですが、cat
色も表示したいです。
ベストアンサー1
私はこの正確なbash問題に対する解決策を探しています。私は最もエレガントなソリューションを提供した@ Thomas Dickeyのコメントをほとんど見逃しました。
echo -e $(cat test.txt)
私に合わないいくつかの点は次のとおりです(明らかにパイプを通してエコーすることはできません)。
cat test.txt | echo -e
または
less -R test.txt
私が持っているもう一つの問題は、echo -eがファイルの改行と連続した空白をうまく印刷しないことです。これを印刷するには、以下を使用しました。
echo -ne $(cat test.txt | sed 's/$/\\n/' | sed 's/ /\\a /g')
これは、次の内容を含むtest.txtファイルで機能します。
\e[0;31mExa mple\e[0m
\e[0;31mExample line2\e[0m