압축·아카이브·검색 (tar·gzip·find)
압축·아카이브·검색 — tar·gzip·zip 으로 묶고 풀고, grep -r·find 로 찾고, 체크섬으로 확인하기
배포 파일을 묶어 옮기고, 로그를 압축해 보관하고, 수백 개 파일 속에서 원하는 줄을 찾는 명령입니다.
tar옵션 다섯 글자, 압축 형식 네 가지,grep -r과find의 조합, 그리고 옮긴 파일이 깨지지 않았는지 보는sha256sum을 익힙니다.
1. 왜 배우는가
리눅스에서 "폴더 압축" 은 두 단계입니다. tar 가 여러 파일을 하나로 묶고 gzip 이 그것을 줄입니다. 그래서 확장자가 .tar.gz 두 개이고 tar czf 한 명령이 두 일을 합니다. 이 구조를 알면 .tgz·.tar.xz·.zip 이 무엇인지 헷갈리지 않습니다.
찾기는 두 종류입니다. 파일 이름·속성으로 찾는 find 와 파일 안 내용으로 찾는 grep -r 입니다. 둘을 파이프로 이으면 "지난 하루에 바뀐 설정 파일 중 db-prod 가 든 것" 같은 질문에 한 줄로 답합니다.
폐쇄망은 파일을 USB 나 반입 서버로 옮깁니다. 옮기다 잘리면 tar 가 풀리지 않거나 jar 가 ZipException 을 냅니다. sha256sum 두 줄이 그 사고를 미리 잡습니다. 예제는 Git Bash 에서 실행 검증했고 zip 은 없어 리눅스 명령을 적었습니다.