[Linux] 리눅스 명령어 - 파일 입출력 명령어(cut, paste, diff)Linux2022. 2. 22. 16:45
Table of Contents
728x90
✅ cut 명령어
- 파일 내용을 각 필드로 구분하고 필드별로 내용을 추출하며 각 필드들을 구분자로 구분할 수 있는 명령어
cut [옵션][파일명]
✅ cut 옵션
-b, --bytes | 바이트를 기준으로 잘라냅니다. |
-c, --characters | 문자수로 열을 계산해서 출력한다. |
-d, --delimiter | <구분자> 파일 내의 필드로 따져서 추출한다. (default는 TAB) |
-f, --fields | 필드를 기준으로 잘라냅니다. |
-z, --zero-terminated | 라인의 구분자를 개행문자가 아닌 NUL 을 사용합니다. |
-s | <구분자> 필드 구분자를 사용하며 필드 구분자를 포함할 수 없다면 그 행은 수행x |
✅ cut 사용 예제
cut -c 2-4 data
data 내용에서 2열부터 4열까지의 값을 잘라서 출력해준다. 따라서 각 행 모두 문자 3개가 출력된다.
cut -d " " -f 1,3 data
# 필드 지정하라는 에러 메세지 출력됨
cut -d " " data
필드를 기준으로 1, 3열의 내용을 잘라서 출력한다.
Q) /etc/passwd 파일에서 첫 번째 필드와, 세 번째부터 다섯 번째 필드를 : 구분자를 기준으로 나누어서 마지막 5줄 만 출력하라
cut -d : -f 1,3-5 /etc/passwd | tail -5
✅ paste 명령어
- 각 파일의 행들을 읽어서 대응되는 것을 탭으로 구분하여 병합하는 명령어
paste [옵션][파일명]
✅ paste 옵션
옵션 | 내용 |
-s | 한 파일의 내용을 한 줄로 보여준 후 다른 파일의 내용을 한 줄로 덧붙인다. |
-d | 출력되는 내용의 구분자를 지정한다. |
✅ paste 사용 예제
paste exam1 exam2
paste -d : exam1 exam2
paste -s -d "|" exam1 exam2
✅ diff 명령어
- differences의 약자로 두 파일 사이의 내용을 비교하는 명령어
- cmp 명령보다는 diff 명령어가 보다 직관적이고 명확하게 결과를 알려준다.
- 일반적으로 하나의 파일 버전과 동일한 파일의 다른 버전 간의 변경사항을 보여주는데 쓰인다.
- 3개의 파일까지 비교 가능하다.
diff [옵션][파일명1][파일명2]
✅ diff 옵션
-c
|
두 파일간의 차이점 출력
|
-d
|
두 파일간의 차이점을 상세하게 출력
|
-r
|
두 디렉토리간의 차이점 출력, 서브디렉토리 까지 비교
|
-i
|
대소문자의 차이 무시
|
-w
|
모든 공백 차이무시
|
-s
|
두 파일이 같을 때 알림
|
-u
|
두 파일의 변경되는 부분과 변경되는 부분의 근처의 내용도 출력
|
✅ diff 사용 예제
1a2는 exam1의 1행 뒤에 exam3의 2행을 추가했다는 뜻이다.
728x90
'Linux' 카테고리의 다른 글
[Linux] 리눅스 명령어 - sort, sed (0) | 2022.02.22 |
---|---|
[Linux] 리눅스 명령어 - 파일 입출력 명령어(grep) (0) | 2022.02.22 |
[Linux] 리눅스 명령어 - Xargs (0) | 2022.02.22 |
[Linux] 리눅스 명령어 - find 명령어 (0) | 2022.02.22 |
[Linux] 리눅스 명령어 - 파일 상태 확인 명령어 (stat) (0) | 2022.02.21 |
@TTOII :: 뭉게뭉게 클라우드
영차영차 성장 블로그
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!