.bz2 파일을 압축 해제하는 방법


377

filename.bz2압축을 풀어야 하는 파일이 있습니다 .

명령을 시도했지만 tar xvjf filename.tar.bz2파일이 파일이 아니기 때문에 작동하지 않았습니다 tar.

이 파일을 어떻게 압축 해제합니까?

답변:


495

다음을 시도하십시오 :

bzip2 -d filename.bz2

이 명령은 원본 보관 파일을 유지하지 않습니다.

원본 아카이브를 유지하려면 다음 -k옵션을 추가하십시오 .

bzip2 -dk filename.bz2

4
bunzip2를 사용할 수도 있습니다. 기본값은 -d (압축 해제) 옵션을 사용하는 것입니다.
RonaldB

2
@LewisDiamond 내가 실행 bzip2 -d vim-8.0.tar.bz2, 그 결과 vim-8.0.tar. 입력 할 수 없습니다.
alhelal

4
@alhelal .tar.bz2 파일이기 때문입니다. 타르볼의 압축을 풀면 압축이 풀린 타 발이 남습니다. 로 추출하십시오 tar -x vim-8.0.tar. 원래는 사용할 수있었습니다 tar -xjvf vim-8.0.tar.bz2.
루이스 다이아몬드

다음과 루이스의 의견에 약간의 보정, 타르도 (적어도 Raspbian 위지에) -f 필요tar -xf vim-8.0.tar
JulianHarty

65

좀 더 자세히 설명하기 위해 단일 파일을 다음과 bzip2같이 압축 할 수 있습니다 .

bzip2 myfile.txt

tar 여러 파일을 압축 할 때만 필요합니다.

tar cvjf myfile.tar.bz *.txt

따라서 .bz2파일 사용 bunzip을 압축 해제 할 때, tar.bz2파일 사용을 압축 해제 할 때 tar xjvf.


6
xjvf에 대한 훌륭한 조언은 저를 구했습니다. 감사!
Edgar Aroutiounian 3

4
당신은 그냥 사용할 수 있습니다 tar xjf filename.tar.bz2. 는 v단지 상세 출력을 추가합니다. 터미널을 깨끗하게 유지하십시오! 나는 또한 달리기 tar -xjf에 문제가 있었으므로 , 그것을 실행 해보십시오-
MrOodles

1
tar xfBSD 변형이면 충분합니다 – j플래그는 압축 할 때만 사용됩니다
Mark Fox


12

bzip2 모노 스레드이므로 큰 파일을 압축 해제하는 데 시간이 오래 걸립니다.

.bz2파일을 다중 스레드로 압축 해제하려면 무료 오픈 소스 프로그램을 사용할 수 있습니다 lbzip2.

sudo apt-get install lbzip2
lbzip2 -d my_file.bz2

-d파일을 압축 해제하려고 함을 나타냅니다. 사용할 스레드 수를 자동으로 결정합니다. 사용하려는 정확한 스레드 수를 지정하려면 -n다음과 같은 매개 변수를 사용하십시오 .

lbzip2 -d -n 32 my_file.bz2

다음과 같은 몇 가지 유용한 명령이 있습니다 lbzip2.

폴더를 압축하려면

tar -c -I lbzip2 -f file.tar.bz2 folder_name

폴더를 압축 해제하려면

 tar -I lbzip2 -xvf file.tar.bz2

매개 변수 :

-I, --use-compress-program PROG
      filter through PROG (must accept -d)
-x, --extract, --get
      extract files from an archive
-v, --verbose
      verbosely list files processed
-f, --file ARCHIVE
      use archive file or device ARCHIVE

.bz2파일을 다중 스레드 로 압축 해제하는 몇 가지 대안 :

pbzip2:

sudo apt-get install pbzip2
pbzip2 -d my_file.bz2

mpibzip2: 클러스터 시스템에서 사용하도록 설계되었습니다.


https://dumps.wikimedia.org/mirrors.html.bz2 을 실험하기 위해 큰 파일 이 필요한 경우

예를 들어 (14GB .bz2파일, 200GB 비 압축) :

wget http://dumps.wikimedia.your.org/wikidatawiki/20170120/wikidatawiki-20170120-pages-articles-multistream.xml.bz2 
lbzip2 -d -n 32 wikidatawiki-20170120-pages-articles-multistream.xml.bz2 

http://vbtechsupport.com/1614/ 는 벤치 마크를 수행했습니다.

여기에 이미지 설명을 입력하십시오


http://explainshell.com/explain?cmd=lbzip2+-d+-n+32+my_file.bz2 에 대한 매개 변수에 대한 자세한 정보는 lbzip2다음을 참조 하십시오 .

여기에 이미지 설명을 입력하십시오


3
bzip2 -dc my_file.tar.bz2 | tar xvf -

cygwin에서 나를 위해 일했습니다.


1
답변에 몇 문장을 추가하여 그 기능을 설명 할 수 있다면 도움이 될 것입니다.
fixer1234

2
@ fixer1234 '-c'옵션은 압축 해제 된 출력을 STDOUT에 복사 한 다음 tar 유틸리티로 파이프하고 '-'를 사용하여 파일 이름으로 표시하므로 다음과 같이 단순화 할 수 있습니다. bzip2 -d my_file.tar.bz2 ; tar xvf my_file.tar
sactiw

1
bzip2 -dc my_file.tar.bz2 | tar xvtar도 파이프 연산자를 통해 STDOUT에서 직접 읽을 수 있기 때문에 이것이 작동하더라도 즉 -f 옵션과 해당 '-'기호를 사용할 필요가 없다고 생각합니다. 또한 처리중인 파일을 나열하지 않으려면 -v 옵션을 삭제하십시오.
sactiw

2
원본 포스터가 이미 tar아카이브 가 아니라고 언급했기 때문에 도움이되지 않습니다 .
icedwater

-4
  1. https://cloudconvert.com으로 이동 하십시오 .
  2. 파일을 업로드하십시오.
  3. .tar 파일로 변환하십시오.
  4. 다운로드 해.
  5. 터미널에서 거기에서 추출하십시오.

7
정말 큰 파일에는 적합하지 않습니다!
narendranathjoshi 2019

9
우리는 수퍼 유저입니다. 우리는 터미널 기반 솔루션을 원합니다.
noɥʇʎԀʎzɐɹƆ

@씨. de Santos ... 및 데이터 제어권을 포기합니다. 당신은 진지 할 수 없습니다.
dirdi
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.