2011-01-10 8 views
2

特定のディレクトリにDOSファイルが存在するかどうかをチェックしたいと思います。 DOSファイルとUNIXの区別は、^ M文字と区別できますか?UNIXでのDOSファイルの確認

ファイルを使用しようとしましたが、両方で同じ出力が得られます。

$ file test_file 
test_file: ascii text 

変換後:

$ unix2dos test_file test_file 
$ file test_file.txt 
test_file.txt: ascii text 

答えて

0

CRLF(\r\n^M)行末の文字はUnixとDOS/WindowsのASCIIファイルの唯一の違いですので、他の方法はありません。

は何がfromdosコマンドに持っている場合は、試してみてくださいすると、元のファイルを使用して、その出力を比較することです:

file=test_file 
fromdos < $file | cmp $file - 

これは、(非ゼロ$?)任意の\r剥ぎ取らfromdos場合は失敗します。

dos2unixも同様の方法で使用できますが、正確な構文はわかりません。

0

あなたが実際に、Windowsの改行を入れた場合、あなたはfileから次の出力が表示されます:

test_file.txt: ASCII text, with CRLF line terminators 
+0

Unixのすべてのバージョンではありません。 –

関連する問題