diff:この出力は何を表しますか? [コピー]

diff:この出力は何を表しますか? [コピー]

次のコマンドを使用して、ディスク上の2つのファイルの違いを記録します。

diff --color=always -sy --suppress-common-lines --suppress-blank-empty file1.c file2.c >> diff_log.txt

内部には、diff_log.txt次のいずれかで始まる多くの行があります。

^[[31m
^[[0m

^[青と白で提供されます[

これが何を意味するのかよく分からない。誰でもこれを説明できますか?

ティア

ベストアンサー1

これはdiff、テキストの色を変更するコマンドによって出力される制御シーケンスです。これは、出力色を指定するために使用するように要求したために行われます--color=always。このオプションを--color=neverまたはに変更するか、--color=autoコマンドから完全に削除することを検討してください。

コマンドを再実行すると、新しい出力は次のようになります。追加>>出力ファイルを切り捨てて書き換える代わりにリダイレクトを使用するため、>前の実行の出力ファイルにこれらの制御シーケンスが続行されます。

別のオプションはファイルビューを使用することですless -R。これはファイルの色の変更制御シーケンスを解釈してテキストの色を変更します(参照man less)。これは必要な場合にのみ選択できるオプションです。バラよりしかし、ドキュメントに。データをさらに処理するには、diffカラー出力を生成しないように指示するのが最善です。

関連:

おすすめ記事