Birden fazla dosyayı tek bir gz dosyasına nasıl yerleştirebilirim?


74

Ben 100 dosya vardır: cvd1.txt, cvd2.txt...cvd100.txt

Nasıl gzipbir içine 100 dosya .gzdosyası, bu yüzden bundan sonra gunzipbuna, Anlatmalıydım cvd1.txt, cvd2.txt... cvd100.txtayrı ayrı?

Yanıtlar:


40

eğer zip varsa

zip myzip.zip cvd*.txt

tarÖnce onlara gerek yok .


1
@ Kurumi- Winzip veya 7-zip gibi Windows programları .zip dosyalarını tanıyor mu?

1
@Tony. Yaptıklarına inanıyorum. 7-zip linux sürümünü zip ile test ettim ve ayıklamayı başardım. İsterseniz, pencereler için GNU zip de vardır.

Sen kaybetmek zgrep, zcmp, zdiffve olmayan streamable formatının seçtiğiniz tarafından boruların üzerinde çalışabilirsiniz araçların her türlü fermuar çağırdı. Uzman kullanıcılar boru kullanırlar.
Tankman六四

83

Sen istiyorsan tarsenin birlikte dosya ve gzipelde edilen katran dosyası.

tar cvzf cvd.tar.gz cvd*.txt

Gzip'd tar dosyasını kaldırmak için yapmanız gerekenler:

tar xvzf cvd.tar.gz -C /path/to/parent/dir

Bu dosyalarınızı /path/to/parent/dirdizinin altına çeker.


6
Dosyayı .tgz, (tar gz için kısa) uzantılı olarak adlandırırsanız, Windows programları onu winzip vb. işleminin yapabildiği bir şey olarak tanıyacaktır. 10 bin'iniz için SiegeX'e tebrikler!
denizci

23

Bunun gibi tar kullanmak isteyeceksiniz:

tar -czvf file.tar.gz cvd*.txt

tar dosyaları bir araya getirir, ardından gzip daha sonra sıkıştırma işlemini gerçekleştirir.

Gzip manpage sayfasına:

Üyelerin daha sonra bağımsız olarak çıkarılabilmesi için birden fazla üyeli tek bir arşiv dosyası oluşturmak istiyorsanız, tar veya zip gibi bir arşiv kullanın. GNU tar, gzip'i şeffaf şekilde çağırmak için -z seçeneğini destekler. gzip, yerine tar olarak tamamlayıcı olarak tasarlanmıştır.


13

gzip kendi başına dosya yapısı hakkında hiçbir şey bilmiyor. İstediğinizi yapmak için, önce dosyaları bir tür kap dosyasına (örneğin bir katran yapısı veya benzeri) koymanız ve ardından onu gzip ile doldurmanız gerekir. tar bunu yapmak için GNU platformlarında z ve j (bzip2 için) anahtarlarına sahiptir.


2
Anahtar aslında 'z' ('x' ayıklamak içindir). Güzel 'j' / bzip2'den bahsetmiştin - çok daha sıkı sıkıştırma.

5

Bunu kullanarak yapabilirsiniz:

gzip my_final_filename.gz my_first_file my_second_file ... my_last_file

gunzip my_final_filename.gz

veya

zip my_final_filename.zip my_first_file my_second_file ... my_last_file

unzip my_final_filename.gz

veya

tar cvzf my_final_filename.tar.gz my_first_file my_second_file ... my_last_file

tar -czvf my_final_filename.tar.gz

İlk emrin işe yaradığını sanmıyorum. En azından genel olarak. Belirli bir kabuk için çalışıyorsa belirtmelisiniz. Yeterli temsilcim olsaydı, oyumu düşürürdüm.
DPM

@ Dpm doğru, gzip/gunzipkomutlar işe yaramadı, hatayı geri döndürecekgzip: my_final_filename.gz: No such file or directory
Bilal

1

Farklı desenlere sahip birden fazla dosyayı sıkıştırmak için şunu yapabiliriz:

tar -czvf deploy.tar.gz **/Alice*.yml **/Bob*.json

bu, Alice ile başlayan tüm .yml dosyalarını herhangi bir alt dizinden ekler ve Bob ile başlayan tüm .json dosyalarını herhangi bir alt dizinden ekler.


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.