모든 파일을 텍스트파일로 간주하여 3개의 파일 비교하기
작성자 정보
- 관리자 작성
- 작성일
컨텐츠 정보
- 3,199 조회
- 0 추천
- 목록
본문
모든 파일을 텍스트파일로 간주하여 3개의 파일 비교하기
diff3명령어에 --text옵션을 사용하시면 세개의 파일비교 시 텍스트파일이 아니더라도 텍스트파일로 간주하여 행과 행을 각각 비교하여 그 결과를 출력해 줍니다.
다음은 그 예입니다.
[root@su250 log]# file wtmp wtmp2 wtmp3 wtmp: data wtmp2: data wtmp3: data [root@su250 log]# [root@su250 log]# diff3 wtmp wtmp2 wtmp3 diff3: subsidiary program `diff' failed [root@su250 log]# |
wtmp파일과 wtmp2파일 그리고 wtmp3 파일의 데이터 형을 확인한 결과 모두 바이너리데이터(data)들입니다.
참고로 리눅스에서 파일타입을 확인할 때에는 위의 예와 같이 file이라는 명령어를 사용합니다.
따라서 text파일타입이 아니므로 일반적인 비교방법으로는 이 3개의 파일비교를 할 수가 없습니다.
즉, 위의 예에서 “diff wtmp wtmp2 wtmp3”의 명령수행 결과 수행실패(failed)라는 메시지를 출력하고 정상적으로 비교수행이 되지 않았습니다.
따라서 아래 예를 보시면 --text옵션을 사용하고 있습니다.
[root@su250 log]# diff3 --text wtmp wtmp2 wtmp3 ====2 1:26c 3:26c 윅썂ts/1ts/1root192.168.0.155TBNI}윅?3~~~runlevel2.6.27.5-117.fc10.i686?NI
?ts/0?NIpts/1?NI朶~~~reboot2.6.27.5-117.fc10.i686긶OI?~~~runlevel2.6.27.5-117. fc10.i686긶OI? 쬹ts/1ts/1root192.168.0.155븏OI흅 윅쎬tty44LOGIN?wOI?ty55LOGIN?wOI?ty22LOGIN?wOI?ty33LOGIN?wOI?ty11LOGIN?wOI?ty66LOGIN? wOpts/0ts/0root192.168.0.155셷OI?윅썂ts/1B뾑IdM[ pts/1ts/1root192.168.0. 155F뾑Im牡쮿 \ No newline at end of file 2:26c 윅썂ts/1ts/1root192.168.0.155TBNI}윅?3~~~runlevel2.6.27.5-117.fc10.i686?NI
?ts/0?NIpts/1?NI朶~~~reboot2.6.27.5-117.fc10.i686긶OI?~~~runlevel2.6.27.5-117. fc10.i686긶OI? 쬹ts/1ts/1root192.168.0.155븏OI흅 윅쎬tty44LOGIN?wOI?ty55LOGIN?wOI?ty22LOGIN?wOI?ty33LOGIN?wOI?ty11LOGIN?wOI?ty66LOGIN? wOpts/0ts/0root192.168.0.155셷OI?윅? \ No newline at end of file [root@su250 log]# |
이번에는 --text옵션을 사용하여 텍스트파일이 아닌 바이너리 파일을 비교하는 방법으로 비교한 것입니다.
그 결과 위의 수행 예와 같이 비록 텍스트파일이 아닌 바이너리파일들이지만 가능한 텍스트포맷을 찾아서 비교작업을 수행하게 됩니다.
관련자료
-
이전
-
다음