.png)
script(1) の使用中に色をオフにする方法はありますか? 私のスクリプト ファイルは、ls などのコマンドからの色に関する不要な情報でいっぱいになっています。この情報は、vim や gedit などのテキスト エディターを使用しているときにのみ表示されます。検索と置換を行うのではなく、問題が発生する前に停止したいと考えています。デフォルトで ^M 改行文字も削除する方法はありますか?
サンプル スクリプト ファイルを添付しました:
Script started on Mon 05 May 2014 10:58:33 PM ADT
^M^M
$ ls^M
^[[0m^[[01;34mBin^[[0m ^[[01;34mDesktop^[[0m ^[[01;34mDocuments^[[0m ^[[01;34mDownloads^[[0m examples.desktop ^[[01;34mMusic^[[0m ^[[01;34mPictures^[ [0m ^[[01;34mPublic^[[0m ^[[01;34mTemplates^[[0m test.txt ^[[01;34mVideos^[[0m^M
^M^M
$ exit^M
exit^M
Script done on Mon 05 May 2014 10:58:50 PM ADT
私が探しているのはこれです:
$ script test.txt
Script started, file is test.txt
$ ls
Bin Desktop Documents Downloads examples.desktop Music Pictures Public Templates test.txt Videos
$ exit
exit
Script done, file is test.txt
答え1
少なくともlsの場合は、
ls --color=never
答え2
私はテストしましたが、コマンドやコマンドプロンプト自体など、色の可能性のあるすべてのソースを追跡する必要があることに気付きました。これはsedフィルターです。コマンドラインfu.comこれは、何かをパイプで通す場合に非常に便利です。もちろん、次のようにパイプで通した出力を保存することもできます。
cat test.txt | sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g" > new-test.txt