Belki de çok büyük miktarlarda dosyaları aktarmak için saf bir komut satırı yöntemi kullanmayı düşünün, şüphesiz sürecin bir gui kullanmaktan çok daha hızlı olduğunu göreceksiniz .
Bunu yapmanın birçok farklı yolu vardır, ancak aşağıdakiler sistemimde hızlı, güvenli ve verimli bir şekilde çalıştı:
find . -maxdepth 1 -type f -print0 | xargs -0 mv -t <destination>
Bu komut için bazı açıklamalar:
- Giriş dizininiz '.' karakteri ve bu özel komut için o dizinde olmanız gerekir
- Çıktı dizininiz
<destination>
benim örneğimde Açıkçası bunu kendi ihtiyaçlarınıza göre değiştirin ve parantezleri dışarıda bırakın.
- Bu sözdizimi boşluklu dosya adlarına bonus olarak izin verir :)
Sonsuz permütasyonlar mümkündür, ancak bu GUI'den daha iyi ve çok daha verimli çalışmalıdır . Örneğin bir permütasyon: sadece pdf dosyalarını taşımak isterseniz, çalıştırabilirsiniz:
find . -iname "*.pdf" -maxdepth 1 -type f -print0 | xargs -0 mv -t <destination>
Kullanımı xargs
özellikle dosyaların böyle çok sayıda hareketiyle birçok olanaklar açar. Çok, çok olasılık ....
Potansiyel Sorunlar:
Bu düşünceler için aşağıdaki yorumcular sayesinde, düşünmek için en az 2 potansiyel tuzak vardır:
- Hedef dizininiz bozulmuş olabilir, daha sonra ulaşılamayan bir konumda, yanlış yazılan vb
mv
. Dosyaları oraya taşıyacaktır! Burada dikkatli ol ...
- Eğer
-t
seçeneği ( --target-directory
) eksik ve hedef klasör aslında bir dosyadır Eğer bir dosya taşımak ve dinlenme üzerinde başarısız olur. mv
: 2 kullanımları vardır adlandırma hedef veya kaynak hareket kaynaktan dizine . Yine dikkatli olun ...
cp -R SRC/ DEST/
)