Farklı bir dizinde tar arşivi nasıl oluşturulur?


38

Geçerli dizin yerine farklı bir dizinde bir tar arşivi oluşturmak istiyorum.

Bu komutu denedim:

tar czf file.tar.gz file1 -C /var/www/

ancak mevcut dizinde arşivi oluşturur. Neden?


3
Anlamını yanlış anlamış gibi görünüyorsunuz -C(belli bir şekilde belgelendiği kadar garip değil). Ayrıntılar için bkz. Serverfault.com/q/416002/86283 .
NN

Yanıtlar:


47

Eğer özellikle yoksa kolay yolu, gerek kullanımı -Canlatmak için tarbaşka dizine değişikliği, sadece komut satırında arşivine tam yolunu belirtmektir. Ardından, arşiv içinde istediğiniz dizin yapısını oluşturmak için hangi dizinde olursanız olun.

Aşağıdaki arşivini oluşturacak /var/www/file.tar.gzve koyun file1hiçbir in-arşiv yol bilgileri ile, içinde (yani olur her neyse) geçerli dizinden.

tar czf /var/www/file.tar.gz file1

Elbette (arşive, kurucu dosyalara veya her ikisine) giden yol da göreceli olabilir. Eğer file1içindedir /tmp, içinde bulunduğunuz /var/spoolve arşiv oluşturmak istiyorum /var/wwwgibi bir şey kullanabilirsiniz:

tar czf ../www/file1.tar.gz /tmp/file1

Temada milyonlarca varyasyon var, ancak bu başlamanıza neden olabilir. vNe yaptığını görmek istiyorsanız bayrak ekleyin tar.


1
Göreceli bir yol da kullanabilirsiniz.
NN

@NN Kesinlikle, ancak ne $PWDolduğu hakkında hiçbir fikrimiz olmadığı için, örnekte mutlak bir yol kullanmak en güvenli göründü.
CVn

Gerçekten de, sorunu çözmek için uygun bir seçenek olduğunu göstermek için bunu dahil etmenin bir anlamı olsa da.
NN

Bu şekilde, file1katran arşivindeki yol olacaktır /tmp. Beklediğiniz gibi olabilir veya olmayabilir.
mouviciel

8

Sıkıştırılmış verileri bir akışa (-) dönüştürürüm ve nerede seçersem seçer (>) kolayca yeniden adlandırır ve konumlandırırım (Ayrıca, her zaman göreceli yolu tar.

tar -cvf - ./dir-to-compress/* > /location-of-new-file/filename.tar

Bu bireysel dosyalara yardımcı olmuyor ve -Cçok daha deyimsel (ve daha kısa).
Mahmoud Al-Qudsi,

3

Bence, olması gereken:
tar czf file.tar.gz -C /var/www/ file1

Bu benim için çalışıyor. Dizin değiştirmeyi ve ardından dosyayı seçmeyi söyler.


-2

Mükemmel çalıştı

cd /home; tar -czvf - /var/log/* > varlog.tar.gz
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.