모의해킹 침해대응 과정/Linux 기초

리눅스 기초때기 4일차 유용한 명령어들 / CMP&DIFF, SORT, FILE

알거음슴 2021. 4. 2. 12:09

 

cmp

서로 다른 파일을 비교하여 다른 내용이 있는지 확인하는

 

1. 형식

[cmp] [OPTIONS] [FILE1] [FILE2]

 

2. 옵션

cmp -l : 두 파일을 비교하여 틀린곳마다 byte 수로 출력

cmp -s : 틀린 화일의 내용을 출력하지 않고 return code 만 변환한다.

 

3. 활용 

 * 주로 파일에 차이가 있는 유무를 확인하는데 활용한다. 틀린 내용을 확인하고 싶을땐 diff 를 활용한다

 

 

 

diff

서로 다른 파일을 비교하여 다른 내용을 찾아 출력해주는 명령어

 

1. 형식

[diff] [OPTIONS] [FILE1] [FILE2]

 

2. 옵션

 diff : 파일 내 차이점을 찾아서 출력해줌

 diff - c : 파일 내 차이점을 찾아서 상세히 출력해줌

 diff -r : 디렉토리 내 동일한 이름들의 파일을 확인해서 차이점을 출력 / 다른 이름의 파일이 있는지 찾아서 출력

 

3. 활용법

 1) 내용이 다른 파일두개를 서로 비교해보자 diff cmpfile1 cmpfile3

3c3

< 33333

---

> 44444

* < 의경우 cmpfile1 에만 있는 내용이고  /  > 의 경우 cmpfile3 에만 있는 내용이다.

 2)  diff -r 을 활용하면 디렉토리 내 동일한 파일을 찾아서 내용의 차이를 확인할 수도 있다.

diff --recursive dir1 dir2 ( diff -r dir1 dir2 )

 

 [참조] cmp / diff 실제 주로 활용하는 경우  

1) 원본 파일과 백업본 파일의 차이점을 찾아서 비교 하는 용도로 주로 사용할 수 있다

ex) diff http.conf http.conf.OLD

2) 디렉토리 마이그레이션(Migration) 작업등에 자주 활용됨.

ex) diff -r /was1 /was2

 

 

sort

파일의 정렬 파일 내부의 내용을 정렬함 

* 정렬의 기준 (기본값)

 1) 오름차순정렬

 2) 1필드 순으로 정렬

 3) 문자열 정렬

 

1. 형식

 [sort] [OPTIONS] [FILENAME]

 

2. 옵션

 sort -r : 내림차순으로 정렬

 sort -n : 숫자로 정렬

 sort -k : 정렬할 필드를 지정하여 정렬

 sort -t : 필드 구분자를 지정한다

 sort -o : 정렬하여 출력결과를 파일에 저장한다

 

3. 활용법

 1) sort -k 의 경우에는 지정된 필드를 우선으로 정렬하고. 동률이 있을경우 1번필드부터 재 비교를 하여 정렬을 진행한다

 2) sort -t 를 활용하여 정렬

* 쉘 에서 필드의 기본적인 구분자는 공백이다 ls -l 이나 ls        -l 이나 결국 ls 는 1필드 -l 은 2필드가 된다. 

* 공백이 없는 자료에 sort-k 의 경우 적용이 어려운 사항이 있어 sort -t 로 임의의 필드구분자를 지정할 수 있다

root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

* sort -t : -k 1 /etc/passwd | head 로 정렬시 : 은 구분자 역할로써 정렬이 진행된다.

3) sort 의 경우도 출력내용이 중심임으로 다른 CMD와 함깨 | 를 이용하여 자주 활용된다.

ex) df -k | sort -k    /   du -sk var | sort -k 2   /   cd /var ; du -sk* | sort -k | more  -> 용량확인용

 

 

 

file

파일의 종류 (file type) 을 알수 있는 명령어

[참고] windows 와 linux 계열의 확장자

* windows 는 확장자의 의미가 중요하다

* linux 계열은 확장자의 의미는 크게 중요하지 않다 (활용을 거의 안한다)

 

1. 형식

[file] [OPTIONS] [FILENAME]