본문 바로가기
IT 이것저것

Linux에서 .tar.bz2 또는 .tar.gz 파일에서 파일을 추출하는 방법

by KaNonx카논 2024. 1. 13.
반응형

Linux에서 .tar.bz2 또는 .tar.gz 파일에서 파일을 추출하는 방법

 Tar 파일은 Ubuntu와 같이 리눅스 배포판에서 사용되는 압축 아카이브입니다. 

단말기에서 tar 명령을 사용하여 추출할 수 있습니다.


 .tar.gz 및 .tar.bz2 확장자는 tar 파일이 gzip 또는 

bzip2 압축 알고리즘을 사용하여 압축되었음을 나타냅니다.


 tar 파일에서 파일을 추출하는 작업은 압축 유형에 따라

 -x, -v 및 -z(.gz) 또는 -j(bz2) 옵션과 함께 tar 명령을 사용하여 수행할 수 있습니다. 

 

추출된 파일은 -C 옵션을 사용하여 특정 디렉토리로 이동할 수 있습니다.

타르 파일은 압축 보관 파일입니다. Ubuntu와 같은 Linux 배포판을 사용하거나

macOS에서 터미널을 사용하는 경우에도 자주 발생할 수 있습니다.

타르볼이라고도 하는 타르 파일의 내용을 추출 또는 해제하는 방법이 여기에 있습니다.

 

2023.09.20 - 와이파이, 메모리 등 잘못 알고 있는 기술 용어 7가지를 알아보자

 

와이파이, 메모리 등 잘못 알고 있는 기술 용어 7가지를 알아보자

와이파이, 메모리 등 잘못 알고 있는 기술 용어 7가지를 알아보자 기술 전문 용어는 삶의 일반적인 부분이 되었지만, 많은 용어들이 잘못 사용되고 있습니다. 일반적으로 사용 목적이 동일하기

kanonxkanon.tistory.com



.tar.gz 및 .tar.bz2는 무엇을 의미합니까?

다음을 포함하는 파일 .tar.gz 혹은 .tar.bz2 확장명은 압축 보관 파일입니다. 

a만 있는 파일 .tar 확장은 압축되지 않지만 매우 드물 것입니다.

그 .tar 파일 확장자의 일부는 테이프 아카이브를 의미하며, 

이 두 파일 유형을 모두 tar 파일이라고 부르는 이유입니다.

 

 타르 파일의 연대는 1979년으로 거슬러 올라갑니다 

tar 명령어는 시스템 관리자가 파일을 테이프에 보관할 수 있도록 만들어 졌습니다. 

 

40년이 지난 지금도 우리는 여전히 tar 하드 드라이브의 tar 파일을 추출하는 명령입니다. 

어딘가에 있는 누군가가 여전히 사용하고 있을 것입니다. 

그 .gz 아니면 .bz2 확장 접미사는 아카이브가 압축되었음을 나타냅니다. 

gzip 아니면 bzip2 압축 알고리즘. 그 tar 명령어는 두 종류의 파일 모두에서 

잘 작동하므로 어떤 압축 방법을 사용했든 상관없습니다. 

 

그리고 Bash 셸이 있는 모든 곳에서 사용할 수 있어야 합니다. 

적절한 것을 사용하기만 하면 됩니다. 

Windows에서 tar.gz 파일을 여는 다른 방법도 있지만 

이 문서의 모든 작업은 Windows 10 또는 Windows 11의 내부에 

Bash 셸을 설치할 수 있는 Windows Subsystem for Linux에서도 

작동한다는 점에 주목할 필요가 있습니다.

 

Tar 파일에서 파일 추출

두 개의 악보 파일을 다운로드했다고 가정해 보겠습니다. 

 

하나의 파일은 다음과 같습니다. ukulele_songs.tar.gz , 

다른 하나는  guitar_songs.tar.bz2 . 입니다.

 

 

이러한 파일은 다운로드 디렉토리에 있습니다.

 

우쿨렐레 노래를 추출해 보겠습니다(추출 대신 "untar"라고도 함).

tar -xvzf ukulele_songs.tar.gz

 

파일이 추출되면 터미널 창에 파일이 나열됩니다.

 

사용한 명령줄 옵션은 다음과 같습니다.

-x: tar 파일에서 파일을 추출하고 검색합니다.
-v: Verbose, 파일을 압축 해제할 때 나열합니다.
-z: Gzip, gzip을 사용하여 tar 파일을 압축 해제합니다.
-f: 파일, 우리가 원하는 tar 파일의 이름 tar 같이 일할 수 있습니다. 

이 옵션은 tar 파일 이름 뒤에 와야 합니다.


디렉토리에 있는 파일을 다음과 같이 나열합니다. 

 

ls 그리고 우쿨렐레 송스라는 디렉토리가 생성된 것을 보실 수 있을 것입니다. 

추출된 파일은 해당 디렉토리에 있습니다. 

tar 파일과 함께 파일을 추출했습니다.

 

 

이제 기타 노래를 뽑아보겠습니다. 

 

이를 위해서는 이전과 거의 동일한 명령어를 사용하지만 

한 가지 중요한 차이점이 있습니다. 

 

그 .bz2 확장 접미사는 bzip2 명령을 사용하여 압축되었음을 알려줍니다. 

사용하는 대신-z (gzip) 옵션을 사용합니다. 

 

-j (bzip2) 옵션을 선택하여 bz2 파일의 압축을 풉니다.

 

 

tar -xvjf guitar_songs.tar.bz2
 

 

다시 한번 파일이 추출되면 단말기에 파일이 나열됩니다. 


-x: tar 파일에서 파일을 추출하고 검색합니다.
-v: Verbose, 파일을 압축 해제할 때 나열합니다.
-j: Bzip2, bzip2를 사용하여 tar 파일을 압축 해제합니다.
-f: 파일, tar와 작업할 tar 파일의 이름.


다운로드 디렉토리에 파일을 나열하면 기타 노래라는 

다른 디렉토리가 생성된 것을 확인할 수 있습니다.

 

파일을 추출할 위치 선택


현재 디렉터리가 아닌 다른 위치에 파일을 추출하려면 

다음을 사용하여 대상 디렉터리를 지정할 수 있습니다. 

 

-C (지정된 디렉토리) 옵션입니다.

tar -xvjf guitar_songs.tar.gz -C ~/Documents/Songs/

 

Documents/Songs 디렉토리에서 기타 노래 디렉토리가 작성되었음을 확인할 수 있습니다.

 

대상 디렉토리가 이미 존재해야 합니다. 

tar 존재하지 않으면 생성되지 않습니다. 

 

디렉토리를 생성하고 다음을 수행해야 하는 경우 

tar 파일을 하나의 명령어로 모두 압축을 풀면 다음과 같이 작업할 수 있습니다.

 

mkdir -p ~/Documents/Songs/Downloaded && tar -xvjf guitar_songs.tar.gz -C ~/Documents/Songs/Downloaded/

 

 

그 -p (parents로 쓸 때) 옵션 원인 mkdir 필요한 상위 디렉터리를 

생성하려면 대상 디렉터리를 생성해야 합니다.

 


추출하기 전에 Tar 파일 내부 보기

지금까지 우리는 그저 믿음의 비약을 이루어 보이지 않는 파일을 추출했을 뿐입니다.

도약하기 전에 미리 보는 것이 좋을 것입니다. 다음의 내용을 검토할 수 있습니다.

 

tar 파일을 사용하여 파일을 추출하기 전에 -t (list) 옵션.

출력을 파이프로 통과시키는 것이 일반적으로 편리합니다. 

 

tar -tfukulele_ songs.tar.gz | less

 

출력을 스크롤하면 tar 파일의 모든 것이 Ukulele Songs라는 디렉터리 안에 있고,

그 디렉터리 안에 파일과 다른 디렉터리가 있다는 것을 알 수 있습니다.

Ukulele Songs 디렉토리에는 Random Songs, Ramones, 

Possibles라는 디렉토리가 포함되어 있음을 알 수 있습니다.

tar 파일 내의 디렉토리에서 모든 파일을 추출하려면 다음 명령을 사용합니다. 

경로에 공백이 있기 때문에 경로는 따옴표로 둘러 싸여 있습니다.

 

tar -xvzf ukulele_songs.tar.gz "Ukulele Songs/Ramones/"
 

단일 파일을 추출하려면 파일의 경로와 이름을 입력합니다.

tar -xvzf ukulele_songs.tar.gz "Ukulele Songs/023 - My Babe.odt"
 

와일드카드를 사용하여 파일을 추출할 수 있습니다.

 * 문자의 문자열을 나타냅니다. 

 

디렉토리를 추출하지 않고 파일 추출

하드 드라이브에서 tar 파일의 디렉토리 구조를 다시 만들지 않으려면 -

-strip-components 선택. 그 --strip-components 옵션에는 숫자 매개 변수가 필요합니다.

 

이 숫자는 무시할 디렉터리 수준을 나타냅니다.

무시된 디렉토리의 파일은 여전히 추출되지만 디렉토리 구조는 하드 드라이브에 복제되지 않습니다.

우리가 지정하면 --strip-components=1 예제 tar 파일을 사용하면

tar 파일 내의 Ukulele Songs 최상위 디렉터리가 하드 드라이브에 생성되지 않습니다.

해당 디렉토리로 압축 해제된 파일 및 디렉토리는 대상 디렉토리에서 압축 해제됩니다.

 

tar - xvz fukulele_ songs.tar.gz --strip- components= 1
 

예제 tar 파일 내에 두 가지 수준의 디렉토리 네스팅만 있습니다. 

그래서 만약 우리가 --strip-components=2, 모든 파일은 

대상 디렉터리에 압축 해제되며 다른 디렉터리는 생성되지 않습니다.

 

 

tar - xvz fukulele_ songs.tar.gz --strip- components= 2
 

 

리눅스맨 페이지를 보시면 tar "커맨드 라인 옵션이 가장 많은 명령어"라는 

제목에 적합한 후보임에 틀림없습니다. 

 

감사하게도, 파일을 추출할 수 있도록 허용합니다. 

 

.tar.gz 그리고. tar.bz2 어느 정도의 세밀한 제어가 가능한 파일이므로 

이러한 옵션 중 몇 가지만 기억하면 됩니다.

 

 

2023.06.05 - System Idle Process가 CPU를 많이 사용하는 이유

 

System Idle Process가 CPU를 많이 사용하는 이유

System Idle Process가 CPU를 많이 사용하는 이유 작업관리자를 열어보니 System Idle Process가 CPU의 90% 이상을 사용하고 있다는 것을 알게 된 적이 있습니까? 과연 System Idle Process는 무슨 일을 하는 프로그

kanonxkanon.tistory.com

2023.06.03 - rundl32.exe는 악성 코드일까? 실행 이유와 제거 방법

2022.10.25 - Android System WebView란 어떤것인가?

 

Android System WebView란 어떤것인가?

Android System WebView란 어떤것인가? Android 기기를 사용하는 경우 Android System WebView라는 앱을 접했을 수 있습니다. Google Play 스토어를 통해 정기적으로 업데이트를 받는 시스템 앱입니다. 하지만 그것

kanonxkanon.tistory.com

2023.11.07 - RTF 파일이란 무엇이며, RTF 파일을 여는 방법을 알아보자

 

-

반응형

댓글