Yanıtlar:
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.
$PWDolduğu hakkında hiçbir fikrimiz olmadığı için, örnekte mutlak bir yol kullanmak en güvenli göründü.
file1katran arşivindeki yol olacaktır /tmp. Beklediğiniz gibi olabilir veya olmayabilir.
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
-Cçok daha deyimsel (ve daha kısa).
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.
-C(belli bir şekilde belgelendiği kadar garip değil). Ayrıntılar için bkz. Serverfault.com/q/416002/86283 .