정보수집

[리눅스] tar 사용법 (아카이브 및 압축 관련)

쿵도리 2018. 1. 16. 12:35

사용법: tar [옵션]... [파일]...


주요 동작 모드 :

-t, --list 아카이브의 내용물을 출력합니다

-x, --extract, --get 아카이브에서 파일을 추출합니다

-c, --create 새로운 아카이브를 만듭니다

-d, --diff, --compare 아카이브와 파일 시스템간의 차이점을 비교합니다

-r, --append 아카이브 끝에 파일을 추가합니다

-u, --update 아카이브 안의 것보다 새로운 파일만 추가합니다

-A, --catenate 아카이브에 tar 파일을 추가합니다

--concatenate -A와 같음

--delete 아카이브로부터 제거합니다 (자기 테이프에선 안됨!)


동작 변경자:

-W, --verify 아카이브를 기록한 다음 검증하도록 합니다

--remove-files 아카이브에 파일을 추가한 다음 지웁니다

-k, --keep-old-files 추출할 때 이미 존재하는 파일을 덮어쓰지 않습니다

:

-U, --unlink-first 추출하기에 앞서 대상 파일을 지웁니다

--recursive-unlink 디렉토리를 추출하기에 앞서 그 체계를 비웁니다

-S, --sparse 스파스 파일을 효율적으로 처리합니다

-O, --to-stdout 표준 출력으로 파일을 추출합니다

-G, --incremental 오래된 GNU 형식의 점진적 백업 파일을 처리합니다

-g, --listed-incremental 새로운 GNU 형식의 점진적 백업 파일을 처리합니다

--ignore-failed-read 읽을 수 없는 파일에 대해 영 아닌 값으로 종료하지

않습니다

장치 선택과 전환:

-f, --file=ARCHIVE 아카이브 파일 또는 ARCHIVE 장치를 사용합니다

--force-local 이름에 콜론이 있는 아카이브 파일도 지역 파일로

인식합니다

--rsh-command=COMMAND rsh 대신 원격 COMMAND를 사용합니다

-[0-7][lmh] 드라이브와 기록 밀도를 지정합니다

-M, --multi-volume 다중 볼륨 아카이브를 생성/출력/추출합니다

-L, --tape-length=NUM NUM x 1024 바이트를 쓴 뒤에 테이프를 바꿉니다

-F, --info-script=FILE 각 테이프의 끝에서 스크립트를 실행합니다

(-M을 포함함)

--new-volume-script=FILE -F FILE과 같음

--volno-file=FILE FILE 안에 있는 볼륨 번호를 사용/갱신합니다


장치 블럭 설정:

-b, --blocking-factor=BLOCK 레코드당 BLOCK x 512 바이트

--record-size=SIZE 레코드당 SIZE 바이트, 512의 배수

-i, --ignore-zeros 아카이브에서 영으로 된 블럭을 무시합니다

(EOF를 의미함)

-B, --read-full-records 읽은 것을 재블럭화합니다 (4.2BSD 파이프용으로)

정보 출력에 관한 옵션:

--help 이 도움말을 인쇄하고 끝냅니다

--version tar 프로그램의 버전 번호를 인쇄하고 끝냅니다

-v, --verbose 처리되는 파일을 순서대로 출력합니다

--checkpoint 아카이브를 읽을 동안 디렉토리 이름을 인쇄합니다

--totals 아카이브를 만들 동안 쓰여진 총 바이트 수를 인쇄합니다

-R, --block-number 각 메시지마다 아카이브내의 블럭 번호를 표시합니다

-w, --interactive 모든 행동에 대해 확인을 요구합니다

--confirmation -w와 같음


-s, --same-order sort names to extract to match archive

--preserve-order same as -s

--preserve same as both -p and -s

-z, --gzip, --ungzip filter the archive through gzip

-Z, --compress, --uncompress filter the archive through compress

--use-compress-program=PROG filter through PROG (must accept -d)


ex) 디렉토리 SSS를 homepage.tar로 압축합니다.

$ tar cvf homepage.tar /SSS

SSS/ 


권한 시간까지 출력합니다.

$ tar tvf homepage.tar

drwxr-xr-x hjh/linux 0 2000-10-07 17:11:51 SSS/


/etc 디렉토리를 aaa란 파일로 압축시킵니다.

$ tar -zcvf aaa /etc


압축된 aaa란 파일을 /etc디렉토리에 압축을 풉니다.

$ tar -zxvf aaa /etc


aaa bbb ccc 파일을 zzz 파일로 압축시킵니다.

$ tar -zcvf zzz aaa bbb ccc 




출처 : http://zappygo.com/o_linux/11299