2011-01-10 3 views
2

특정 디렉토리에 DOS 파일이 있는지 확인하고 싶습니다. DOS 파일과^M 문자를 구별 할 수있는 방법이 있습니까?UNIX에서 DOS 파일 확인

파일을 사용해 보았지만 동일한 출력을 제공합니다. 실제로 윈도우 뉴 라인에 넣으면

$ 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

, 당신은 file에서 다음과 같은 결과가 나타납니다 :

$ file test_file 
test_file: ascii text 

그리고 변환 후

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

모든 유닉스 버전에있는 것은 아닙니다. –

관련 문제