'daki tüm alt dizinlerdeki tüm dosyaları gziplemek için Geçerli konumumun alt dizinleri arasında yineleme yapmak ve her dosyayı ayrı ayrı gziplemek istiyorum. Bir dizindeki dosya sıkıştırma için, benBash
for file in *; do gzip "$file"; done
kullanmak ama bu sadece geçerli dizine ve geçerli dizinin değil alt dizinleri üzerinde çalışabilirsiniz. Yukarıdaki deyimleri yeniden yazabilirim, böylece tüm alt dizinlerdeki dosyaları da sıkıştırır?
Son cümlenin ortak bir yanlış bilgilendirme olduğunu. Bir dosya adının nerede başladığını ve nerede bittiğini öğrenin. Kendisi, boşluklar, linebreaks ve diğer komik şeyler ile ilgili herhangi bir problem yaşamaz. Yani -exec gzip {} 'gzip'i tek bir dosya adıyla çağırır ve ara boşluğu çağrılmadığı için, boşluğu sınırlayıcı olarak yorumlayabilen gzip, tüm dosya adını alır. Bulgunun manpageindeki ipucu güncelliğini yitirmiş ve şu anlama gelir: Kabuğunuz onu bulmak için geçmeden önce {} yorumlamaya çalışabilir, ancak yıllarca böyle bir kabuk görülmemiştir (http://unix.stackexchange.com/q/) 8647/4485). –
Her gün yeni bir şeyler öğreniyorsunuz. Ders için teşekkürler! Exclude * .gz dosyaları için –
+1 – GuruM