tar 명령은 다음과 같이 짧습니다. 테이프 아카이브 리눅스에서. 이 명령은 아카이브를 생성하고 아카이브 파일을 추출하는 데 사용됩니다. ~ 안에 리눅스 , 아카이빙 기능을 용이하게 하는 필수 명령 중 하나입니다. 이 명령을 사용하면 압축되지 않은 아카이브 파일과 압축된 아카이브 파일을 생성하고 수정하고 유지할 수도 있습니다.
Tar는 컴퓨팅에서 여러 파일을 단일 아카이브 파일로 수집하는 컴퓨터 소프트웨어 유틸리티입니다. 종종 백업 및 배포 목적으로 tarball로 알려져 있습니다. 이 제목은 실제로 파일 시스템을 전혀 사용하지 않는 순차 I/O 장치에 대한 데이터를 지정하기 위해 개발되었기 때문에 '테이프 아카이브'에서 따온 것입니다. tar로 만든 아카이브 데이터 그룹에는 디렉토리 구성, 파일 액세스 권한, 소유권, 타임스탬프 및 이름과 같은 많은 파일 시스템 매개변수가 포함됩니다. pax를 선호하여 POSIX는 tar를 포기했지만 tar는 아직 널리 사용되고 있습니다.
첫째, 1979년 1월 Unix 버전 7에서 tp 프로그램을 대체하여 발표되었습니다. 데이터를 저장하기 위해 파일 구조는 POSIX.1-1988 및 이후 POSIX.1-2001에서 표준화되었으며 거의 모든 최신 파일 보관 시스템에서 지원하는 패턴이 되었습니다. Unix 계열 운영 체제에는 일반적으로 bzip2 및 gzip과 같이 tar 파일을 지원하는 도구와 해당 파일을 압축하는 데 사용되는 유틸리티가 포함되어 있습니다.
Microsoft 2018년 4월 10일 업데이트 이후 BSD-tar는 Microsoft Windows에 포함되었으며 Windows에서 이러한 패턴을 읽고 쓸 수 있는 두 개 이상의 타사 도구가 있습니다.
tar의 파일 형식
현재 및 과거 형식을 포함하여 다양한 tar 파일 형식을 사용할 수 있습니다. POSIX에서는 pax와 ustar라는 두 가지 tar 형식이 작성됩니다.
머리글
파일 헤더 레코드에는 파일의 메타데이터가 포함됩니다. 헤더 레코드에서 정보는 고유한 바이트 순서를 사용하여 고유한 아키텍처 전반에 걸쳐 유연성을 보장하기 위해 ASCII 표준으로 인코딩됩니다. 따라서 모든 파일이 아카이브의 ASCII 텍스트 파일이고 ASCII 이름을 포함하는 경우 아카이브는 ASCII 텍스트 파일(여러 NUL 문자 포함)입니다.
다음 표에는 실제 Unix tar 형식으로 정의된 여러 필드가 언급되어 있습니다. 링크 파일/표시기 유형 테이블에는 몇 가지 최신 확장이 포함되어 있습니다. 필드가 사용되지 않은 경우 다양한 NUL 바이트로 채워집니다.
POSIX.1-1988 이전 tar 헤더:
필드 | 필드 크기 | 필드 오프셋 |
---|---|---|
파일 이름 | 100 | 0 |
파일 모드 | 8 | 100 |
소유자의 숫자 사용자 ID | 8 | 108 |
그룹의 숫자 사용자 ID | 8 | 116 |
바이트 파일 크기 | 12 | 124 |
숫자 Unix 시간 형식의 마지막 수정 시간 | 12 | 136 |
헤더 레코드의 체크섬 | 8 | 148 |
링크 표시 | 1 | 156 |
링크된 파일 이름 | 100 | 157 |
Ustart 형식
Ustar 형식에서는 거의 모든 최신 tar 프로그램이 1988년 POSIX IEEE P1003.1 표준에 의해 발표된 아카이브를 쓰고 읽습니다. 여기에는 추가 헤더 필드가 도입되었습니다. 이전 tar 프로그램은 추가 정보를 피했지만 새 프로그램은 'Ustar' 문자열 존재를 확인하여 최신 형식이 사용 중인지 결정합니다.
필드 | 필드 크기 | 필드 오프셋 |
---|---|---|
이전 형식과 같은 많은 필드 | 156 | 0 |
플래그 유형 | 1 | 156 |
이전 형식과 유사한 필드 | 100 | 157 |
'ustar' Ustar 표시자, 그 다음에는 NUL | 6 | 257 |
'00' 우스타 버전 | 2 | 263 |
소유자의 사용자 이름 | 32 | 265 |
소유자의 그룹 이름 | 32 | 297 |
장치의 주요 번호 | 8 | 329 |
장치의 부 번호 | 8 | 337 |
파일 이름 접두어 | 155 | 3. 4. 5 |
POSIX.1-2001/인원
Sun은 1997년에 tar 형식에 확장을 추가하는 기술을 제안했습니다. 나중에 POSIX.1-2001 표준에 대해 승인되었습니다. 형식을 pax 형식 또는 확장 tar 형식이라고 합니다. mtime, atime, linkpath, gname, uname, size, gid, uid 및 그룹/사용자 이름과 경로 이름에 대한 문자 집합 정의를 포함한 일부 태그는 POSIX 표준에 의해 지정됩니다.
tar의 주요 구현
주요 구현은 원본 순서에 언급되어 있습니다.
또한 대부분의 cpio 및 pax 구현은 두 개 이상의 tar 파일 유형을 만들고 읽을 수 있습니다.
tar 명령 구문:
tar [options] [archive-file] [directory or file to be archived]
tar 명령의 옵션
tar 명령의 다양한 옵션은 다음과 같습니다.
아카이브 파일 소개
아카이브 파일은 메타데이터가 포함된 여러 파일을 포함하는 파일로 정의할 수 있습니다. 이러한 파일은 보다 쉬운 저장 및 이동성을 위해 하나 이상의 데이터 파일을 개별 파일로 수집하는 데 사용됩니다. 또한 저장 공간을 덜 사용하기 위해 파일을 압축하는 데에도 사용할 수 있습니다.
tar 명령의 예
tar 명령에서 널리 사용되는 중요한 예는 다음과 같습니다.
1. -cvf 옵션을 사용하여 압축되지 않은 tar 아카이브 만들기
이 옵션을 사용하면 tar 파일이 다음과 같이 알려집니다. 파일.tar . 내부의 모든 .txt 파일의 아카이브입니다. 마이디르 예배 규칙서.
명령은 다음과 같습니다:
$ tar cvf file.tar *.txt
2. -xvf 옵션을 사용하여 아카이브를 통해 파일 추출
이 옵션은 아카이브를 통해 파일을 추출할 수 있습니다.
명령은 다음과 같습니다:
하위 문자열 문자열 자바
$ tar xvf file.tar
3. -z 옵션을 사용하여 tar 아카이브를 통한 gzip 압축
이 옵션을 사용하면 tar 파일이 다음과 같이 알려집니다. 파일.tar.gz. 모든 .txt 파일의 아카이브입니다.
명령은 다음과 같습니다:
$ tar cvzf file.tar.gz *.txt
4. -xvzf 옵션을 사용하여 gzip tar 아카이브 추출
이 옵션은 file.tar.gz tar 아카이브 파일을 통해 파일을 추출할 수 있습니다.
명령은 다음과 같습니다:
$ tar xvzf file.tar.gz
5. -j 옵션을 사용하여 압축된 tar 파일 만들기
이 옵션은 아카이브 파일을 생성하고 압축하는 데 도움이 됩니다. 압축 해제와 압축 모두 gzip에 비해 시간이 더 걸립니다.
명령은 다음과 같습니다:
$ tar cvfj file.tar.tbz hello1.txt
6. Linux에서 지정된 단일 디렉터리 또는 파일의 압축을 풉니다.
이 옵션은 현재 디렉토리 또는 -C 옵션을 사용하여 지정된 디렉토리 내부의 모든 파일을 압축 해제하는 데 사용됩니다.
명령은 다음과 같습니다:
지도 자바 반복자
$ tar -xvf file.tar -C file's path in the directory
또는,
$ tar -xvf file.tar
7. Linux에서 여러 .tar.tbz, .tar.gz, .tar 파일을 압축 해제합니다.
이 옵션은 다음을 수행하는 데 도움이 됩니다. 확산 또는 tar.bz2, tar.gz 및 tar 아카이브 파일에서 두 개 이상의 파일을 추출합니다.
이 옵션의 예는 다음과 같습니다.
$ tar -jxvf file.tar.tbz 'hello1.txt'
또는,
$ tar -zxvf file.tar.gz 'hello1.txt' 'hello2.txt'
또는,
$ tar -xvf file.tar 'hello1.txt' 'hello2.txt'
8. 기존 tar.tbz, tar.gz, tar 파일의 크기를 확인하세요.
이 명령은 위에서 언급한 아카이브 파일의 크기를 킬로바이트(KB) 단위로 표시하는 데 도움이 됩니다.
명령은 다음과 같습니다:
$ tar -czf - file2.tar.tbz | wc -c
또는,
$ tar -czf - file1.tar.gz | wc -c
또는,
$ tar -czf - file.tar | wc -c
9. 기존 tar 파일 업데이트
Linux에서 기존 tar 파일을 업데이트하는 명령은 다음과 같습니다.
$ tar rvf file.tar *.txt
10. tf 옵션을 사용하여 콘텐츠 목록 및 tar 파일 설명
이 옵션은 전체 아카이브 파일 목록을 나열하는 데 도움이 됩니다. 또한 tar 파일 내의 특정 콘텐츠를 나열할 수도 있습니다.
명령은 다음과 같습니다:
$ tar tf file.tar
11. -tvf 옵션을 사용하여 아카이브 보기
Linux에서는 -tvf 옵션을 사용하여 아카이브를 볼 수 있습니다.
명령은 다음과 같습니다:
C의 부울
$ tar -tvf file.tar
12. 파일 이름을 인수로 전달하여 tar 파일을 찾습니다.
이 옵션을 사용하면 보관된 파일과 해당 정보를 볼 수 있습니다.
명령은 다음과 같습니다:
$ tar tvf file.tar filename
13. 파이프를 사용하여 'grep 명령'을 던져 우리가 찾고 있는 것을 검색합니다.
이 옵션은 언급된 이미지나 텍스트만 나열하는 데 도움이 됩니다. 꽉 붙잡음 보관된 파일을 통해.
명령은 다음과 같습니다:
$ tar tvf file.tar | grep 'filename.file'
또는,
$ tar tvf file.tar | grep 'text to search'
와일드카드 소개
또는 와일드카드를 Linux에서는 와일드카드 문자 또는 와일드 문자라고 합니다. 여러 문자를 표현하거나 대체하는데 사용되는 기호입니다.
일반적으로 와일드카드는 개별 문자를 나타내는 물음표(?) 또는 여러 문자를 나타내는 별표(*)입니다.
예-
14. .webp 형식 이미지 찾기
file.tar 아카이브에서 .webp 확장자를 가진 파일만 추출하는 데 도움이 됩니다. -wildcards 옵션은 추출할 파일 이름의 와일드카드를 해석하도록 tar에 알립니다.
파일 이름(*.webp)은 쉘에서 잘못 확장되는 것을 방지하기 위해 와일드카드(*)를 보호하기 위해 작은따옴표로 묶입니다.
명령은 다음과 같습니다:
$ tar tvf file.tar --wildcards '*.webp'
참고: 위 명령에서는 해당 특정 디렉터리에서 사용 가능한 각 파일을 가져오기 위해 파일 이름 위치에 '*' 기호가 적용됩니다.
15. tar 아카이브에서 파일 삭제
파일과 tar 아카이브를 제거하려면 --delete 옵션을 사용할 수 있습니다.
명령은 다음과 같습니다:
$ tar --delete -f archive.tar file_name
예:
tar -delete -f file.tar hello1.txt
산출:
hello1.txt 파일이 file.tar 아카이브에서 제거되었습니다: