GNU/Linux >> Linux の 問題 >  >> Linux

リダイレクト時にclangが理解できないテキストを生成するのはなぜですか?

コードページ/エンコーディングとは関係ありません。出力はプレーンテキストではありません。 09 のようなシーケンスが含まれています .これらの文字列 (表示されていませんが、これらのそれぞれの前に [エスケープ] 文字もあります) は、テキストを太字、斜体、さまざまな色などで表示するための端末への指示です。これにより、出力が読みやすくなります。

出力を美しくしようとせず、代わりにプレーンテキストを使用するようにclangに指示するオプションがあるはずです。マニュアルを確認してください。 (手元にないので、適切なコマンドが何かはわかりません。)


または、出力から色を削除する代わりに、17 の raw オプションを使用して端末で色付きの出力を表示できます。

less -r output.txt

26 などの文字 私には端末出力制御のように見えます。これらは、端末でテキストに色を適用するために頻繁に使用される一連のエスケープ シーケンスの一部です。このような未加工の状態では、bash プロンプト自体に色を適用するためにもよく使用されます。 私のすべてのマシンで何年も:

export PS1='\[\033[1;33m\]\u\[\033[1;35m\]@\[\033[1;32m\]\h\[\033[0;36m\]\w\[\033[1;37m\]\$ \[\033[0;37m\]'

(ほとんどの人は醜いと思いますが、私は気に入っています)。

コマンドの出力から色分けなどを削除するスイッチを見つけることができるかどうかを確認し、それが役立つかどうかを確認してください。


Linux
  1. Ssh -tオプションがリダイレクト出力にCrとLfを追加するのはなぜですか?

  2. 色付きのテキストを Linux 端末に出力するにはどうすればよいですか?

  3. ファイルにリダイレクトするときに stdout を明示的にフラッシュする必要があるのはなぜですか?

  1. シェルコマンド置換が末尾の改行文字を飲み込むのはなぜですか?

  2. rsync がローカル ファイルにデルタ転送を使用しないのはなぜですか?

  3. iftop - 出力を含むテキスト ファイルを生成する方法は?

  1. libvirt_typeがKVMの場合、OpenStackがハイパーバイザータイプをQEMUとして報告するのはなぜですか?

  2. 「tail-f| Iconv -fsjis」は何も出力しませんか?

  3. Ls-lがLs-sとは異なるサイズを出力するのはなぜですか?