過去に問題が発生したことのない非常に基本的なコマンドを実行していますが、現在、望ましくない文字が不可解に返されています。
Linux で BASH を使用していて、単純にディレクトリを検索して、パターンに一致するファイル名を含むファイルを作成したいだけです。
ls | grep "*.file_ID" > my_list.txt
...これは正常に機能し、データを猫にすると:
cat my_list.txt
seriesA.file_ID
seriesB.file_ID
seriesC.file_ID
ただし、このファイルを下流プロセスにフィードしようとすると、ファイルがファイル名のリストとして適切にフォーマットされていないかのように、奇妙なエラーが発生し続けます。不要な文字を明らかにするために vim でファイルを開くと、ファイルは実際には次のようになっていることがわかります。
vi my_list.txt
^[[00mseriesA.file_ID^[[00m
^[[00mseriesB.file_ID^[[00m
^[[00mseriesC.file_ID^[[00m
何らかの理由で、すべての行が文字で開始および終了されます^[[00m
。これらの文字を削除すると、下流のプロセスはすべて正常に動作します。ただし、スクリプトでそのようなファイル リストを自動的に作成する必要があるため、これらの文字を手動で削除し続けることはできません。
^[[00m
キャラクターを生み出しているものを知っている人はいますか?それらがどこから来ているのかわからないので、それらなしでファイルを生成できるようにする必要があります。
ありがとう!