본문 바로가기

Linux

03. CentOS7 명령어 - touch, Archive, 압축(zip, gzip, bzip2, xz)

1. touch

파일이나 디렉토리의 시간 정보 변경

 

1.1. touch - t [시간정보] [파일명]

1.2. touch -c [파일명] (파일이 없는 경우 생성하지 않음)

 


2. Archive

2.1. 정의 : Backup이나 압축을 위해서 여러개의 파일이나 디렉토리를 하나의 파일로 만드는 작업

2.2. 탄생 : 예전 Type Drive 시절 여러 곳에 혼재하는 파일이나 디렉토리를 한 파일로 관리

2.3 명령어

  • tar (Tape Archive)
    • -c : Archive 파일 생성 (필수옵션)
    • -x : Archive 파일 해제 (필수옵션)
    • -v (view) : 작업 진행 과정 확인 (필수옵션x)
    • -f : 파일 이름 지정 (필수옵션)
    • -t : 해제하지 않고 Archive 파일 확인
    • -r : 기존 Archive 파일에 파일 추가
    • -u : 기존 Archive 파일에 업그레이드 된 파일 추가
  • 압축 옵션
    • z (gz 압축) : tar zcvf [파일명].tar.gz
    • j (bzip2 압축) : tar jcvf [파일명].tar.bz2
    • J (xz 압축) : tar Jcvf [파일명].tar.xz

2.4. 사용법

  • Archive 생성 : # tar -cvf [아카이브파일이름] [파일명1] [파일명2] [파일명3] ....
  • Archive 해제 : # tar -xvf [아카이브 파일이름]
  • 다른 경로에 해제 : # tar -xvf [아카이브파일이름] -C [경로지정]
  • Archive에 있는 파일 삭제 : # tar --delete --file=[아카이브파일이름] [삭제할파일명]

 

※ a.txt, b.txt 파일 아카이브

 

※ ab.tar 아카이브 해제

 

※ v옵션 주지않고 아카이브 해제

  • 작업 진행 과정이 출력되지 않는다.

 

※ 아카이브 해제하지 않고 파일 내용 확인

 

※ 아카이브 해제 시 경로 지정 (-C)

 

※ cd.tar 아카이브 파일에 e.txt 파일 추가

 

※ c.txt 파일 수정 후 cd.tar 아카이브 파일에 업데이트

 

※ cd.tar 아카이브 파일에서 d.txt, c.txt 파일 삭제


3. 압축

3.1. zip

  • 설치 필요 : # yum install -y zip unzip
  • 압축
    • # zip [파일명].zip [파일명1] [파일명2] [파일명3] ....
  • 해제
    • # unzip [파일명].zip

※ zip, unzip 패키지 설치

 

※ a.txt, b.txt, c.txt 파일 압축

 

※ abc.zip 압축 해제

 

 

3.2. gzip

  • 압축
    • # gzip [파일명] : gzip ab.tar -> ab.tar.gz
    • # gzip -[1~9] [파일명] : 숫자가 클수록 압축률이 높다, 속도는 느려진다. (기본값은 6)
  • 해제
    • # gunzip [파일명].gz
    • # gzip -d [파일명].gz
  • 압축 해제 없이 파일 내용 확인
    • # zcat [파일명]

 

※ ab.tar 아카이브 파일 gzip으로 압축

 

※ ab.tar.gz 압축 해제 (gunzip, gzip -d)

 

※ zcat 명령어로 파일 내용 확인

 

 

3.3. bzip2

  • gzip 보다 압축률이 2배 가량 좋음
  • 설치필요 : # yum install -y bzip2
  • 압축
    • # bzip2 파일명 : bzip ab.tar -> ab.tar.gz
    • # bzip2 -[1~9] [파일명]
  • 해제
    • # bunzip2 [파일명].bz2
    • # bzip2 -d [파일명].bz2
  • 압축 해제 없이 파일 내용 확인
    • # bzcat [파일명]

 

※ ab.tar 아카아브 파일 bzip2로 압축

 

※ ab.tar.bz2 압축 파일 해제 (bunzip2, bzip2 -d)

 

※ bzcat 명령어로 파일 내용 확인

 

 

3.4. xz

  • 압축
    • # xz [파일명]
    • # xz -[1~9] [파일명]
  • 해제
    • # unxz [파일명].xz
    • # xz -d [파일명].xz
  • 압축 해제 없이 파일 내용 확인
    • # xzcat [파일명]

 

※ ab.tar 아카아브 파일 xz로 압축

 

※ ab.tar.xz 압축 파일 해제 (unxz, xz -d)

 

※ xzcat 명령어로 파일 내용 확인

 


zip, gzip, bzip2, xz 로 압축한 파일 크기 비교해보기

파일 압축 률

  •  bz2 -9 > bz2 -1 > xz -9 > xz -1 > zip = gz -9 > gz -1

(xz -9 와 xz -1은 왜 같은지 모르겠다. 일단 -9가 높은걸로 표시)


4. 아카이브 & 압축

4.1 tar cvf 공통

  • -z : gz 확장자
    • # tar cvfz [압축파일명].tar.gz [압축할파일1] [파일2] [파일3] ...
  • -j : bz2 확장자
    • # tar cvfj [압축파일명].tar.bz2 [압축할파일1] [파일2] [파일3] ...
  • -J : xz 확장자
    • # tar cvfJ [압축파일명].tar.xz [압축할파일1] [파일2] [파일3] ...

※ tar cvfz, tar cvfj, tar cvfJ 명령어로 아카이브 압축해보기

4.2. 옵션과 확장자를 틀리게해도 파일은 생성된다. 단, 압축 및 아카이브 해제 시 STDIN Error 발생

  • 확장명과 다른 옵션을 입력해서 압축 및 아카이브 해제 가능