1.1 cat 명령어
package.json 내용을 읽어서 그대로 출력하는 명령어
cat ./package.json
package.json 내용을 package-name.txt 파일로 그대로 복붙 - package-name.txt 파일이 없으면 자동생성한다.
cat ./package.json > package-name.txt
여러개 파일 한번에 읽기
cat ./package.json ./package-name.txt
cat [파일 이름] | 파일 훑어보기
cat 커맨드는 파일안의 내용이 얼마나 길던지는 상관하지 않고, 모두 읽어버립니다.
그래서 긴 파일을 훑어보는데 grep 커맨드와 같은 다른 커맨드와 조합하여 사용하지 않는다면 적합하지 않습니다.
cat [파일 이름1] [파일 이름2] … [파일 이름3]
훑어보고자 하는 파일들을 개수에 관계 없이 병렬로 나열하시면 됩니다.
cat chap1.example.txt
cat chap1.example.txt chap2.example.txt
cat *.example.txt
cat > [파일 이름] | 새로운 파일 만들기
cat 커맨드를 이용하여, 출력물을 간단하게 파일로 만들 수도 있습니다.
빈 파일을 만들 때는 touch 등을 사용해서 쉽게 만들 수 있는데요.
cat은 그보다 좀 더 나은 기능을 수행합니다.
빈 파일이나 텍스트가 입력된 파일이나 만드는 방법은 동일하기 때문에, 아래와 같이 정리하였습니다.
- cat > [파일 이름]
- 넣고 싶은 텍스트를 입력 (없을 시, 바로 ‘ctrl+d’으로)
- ‘ctrl + d’로 빠져나오기
cat [파일] > [새로운 파일] | 훑어본 내용을 새로운 파일에 옮기기
cat 커맨드로 출력된 내용을 사용자에게 보여주지 않고, 바로 새로운 파일로 만들어 저장하는 방법입니다.
두 텍스트 파일(chap1.example.txt, chap2.example.txt)에 있는 내용을 새로운 텍스트 파일(chap4.example.txt)에 옮겨 보았습니다.
~/Test (549) $cat chap[12].example.txt > chap4.example.txt // [12] 와일드카드를 통해 1 혹은 2가 포함된 파일을 선별
~/Test (551) $cat chap4.example.txt
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
중략
Hello World! Good day!
Hello World! Good day!
Hello World! Good day!
Hello World! Good day!
cat » [파일 이름] | 파일 뒤에 내용 추가하기
이미, 존재하는 파일에 » Indicator를 사용해주게 되면, 기존의 내용은 그대로 보존하며, 그 뒤에 새로운 내용을 추가합니다.
cat >> chap4.example.txt
cat [파일 이름] | less | 한줄씩 내리면서 보기
cat 커맨드 뒤에 파이프를 긋고 less 커맨드를 추가 시켜주면, 한줄씩 키보드 화살표로 내리면서 볼 수 있습니다.
훑어보고자 하는 파일이 짧은지 긴지 모를 때, 사용하면 유용합니다.
훑어보기 나가기 : q
cat chap4.example.txt | less
cat [파일 이름] | grep [특정문자열] > [작성할 파일이름]
cat ./package.json | grep name > package-name.txt
위 예시는 package.json 파일 내용에서 “name” 스트링이 들어간 줄은 다 캐치해서 package-name.txt 로 보낸다.