안녕하세요, MJ 입니다.
cat 명령어는 일반 파일을 터미널상에 출력하는 명령어 입니다.
cat 명령어에 대해 알아보겠습니다.
cat 명령어의 도움말을 먼저 확인하고 자주 사용되는 옵션과 cat 명령어 사용법을 설명하겠습니다.
도움말
펼치기/접기
옵션 설명
-A: -vET 옵션과 같습니다.
-b: 빈줄에는 줄번호를 매기지 않습니다.
-e: -vE 옵션과 같습니다.
-E: 라인의 끝을 $ 문자로 표시합니다.
-n: 줄번호를 표시합니다.
-s: 반복적 인 빈 출력 라인을 억제합니다.
-t: -vT 옵션과 같습니다.
-T: 탭 문자를 ^T 로 대체하여 표시합니다.
-v: 엔터와 탭 문자를 보이도록 하지 않고, 라인의 끝에 윈도우의 줄바꿈문자(캐리지리턴:CR)
를 보여줍니다.
☆ 캐리지 리턴 설명
키보드의 'Enter' 키에 그림을 보면,
아래로 가다가 왼쪽으로 꺾여있는 화살표가 그려져 있습니다.
엔터를 누르게 되면 아래로 가는 동작을 한 뒤에, 왼쪽으로 가는 동작을 한다는 뜻 입니다.
이는 윈도우에서의 동작으로 엔터 한번 입력에 두가지의 동작을 하게 됩니다.
하지만 리눅스에서는 엔터가 아래로 한번만 동작합니다.
리눅스 에서도 윈도우와 같이 아래로 간 다음 왼쪽으로 가면 문제가 없겠지만,
리눅스와 윈도우에서는 메모리에 데이터를 저장하는 방식이 달라, 윈도우와 리눅스는
그 순서가 바뀌게 됩니다. 리눅스에서는 왼쪽으로 먼저 간 다음, 아래로 가도록 동작하게 되어
내가 입력 한 모든 문자가 모두 지워지고 아래로 가게 됩니다.
(리눅스-리틀엔디안,윈도우-빅엔디안 차이)
그래서 텍스트 파일을 vi 로 열어보거나 하면 잘 보이긴 하지만, cat 이나, 스크립트 작성에서
파일을 실행 할때에는 작성자가 원하는대로 동작하지 못하게 되어, 리눅스에서는 이 줄바꿈 문자에 대해 신경을 쓰지 않을 수 없습니다.
그리하여 리눅스에서는 줄바꿈 문자를 LF (Line Feed)
윈도우에서의 줄바꿈문자는 CRLF 로 표현 합니다. (Carriage Return)
모든 옵션에 대해 실습을 하지는 않지만, 다음 내용에 대해 실습을 하신다면 리눅스 엔지니어로 일 하시는 중에도 전혀 불편함 없이 사용 하실 수 있을것이라고 생각됩니다.
시작합니다.
1. 리눅스 파일 출력
cat 명령어 뒤에 파일 이름을 주면 파일의 내용을 출력할 수 있습니다.
[run-linux cat]$ ls -l
total 12
-rw-r--r-- 1 root root 18 Sep 24 15:11 A_file
-rw-r--r-- 1 root root 18 Sep 24 15:11 B_file
-rw-r--r-- 1 root root 18 Sep 24 15:11 C_file
[run-linux cat]$ cat A_file
A_file: testprint
[run-linux cat]$ cat A_file B_file
A_file: testprint
B_file: testprint
[run-linux cat]$ cat A_file B_file C_file
A_file: testprint
B_file: testprint
C_file: testprint