CMD/PowerShell/Bash Alt Dizinlerden Dosya Kopyalama

Benim gibi File Explorer ile zorlanıyor ve bazı işlemler için komut satırı daha kolay geliyorsa, işinize yarayabilecek bir ipucu.

Bir dizinin tüm alt dizinlerine bakıp belli bir uzantıdaki dosyaları bir yere kopyalamak veya taşımak istiyorsanız, CMD kullanarak aşağıdaki şekilde bir bunu yapabilirsiniz.
Ufak bir nokta, MOVE komutu dosyaları taşır. Kopyalamak için MOVE yerine COPY kullanmanız gerekir:

FOR /R "Kaynak_Dizin" %i IN (*.dosya_uzantısı) DO MOVE %i "Hedef_dizin"

Örneğin “C:\Users\Tolga\Pictures” altına yanlışlıkla kopyaladığım mp4 formatındaki videolarımı “C:\Users\Tolga\Videos” altına almak için:

FOR /R "C:\Users\Tolga\Pictures" %i IN (*.mp4) DO MOVE %i "C:\Users\Tolga\Videos"

Eğer PowerShell kullanmak isterseniz:

get-childitem -Path "Kaynak_Dizin" -Recurse -File *.dosya_uzantısı | move-item -destination "Hedef_dizin"

Yukarıdaki örneği takip edersek:

get-childitem -Path "C:\Users\Tolga\Pictures" -Recurse -File *.mp4 | move-item -destination "C:\Users\Tolga\Videos"

PowerShell komutu benim gibi Linux terminalde find-exec{} veya pipe (|) patternine alışkın olanlar için daha kolay gelebilir.

Yukarıdaki işlemin bash karşılığı (mv dosyaları taşır, kopyalamak için cp kullanın):

find "Kaynak_Dizin" -name "*.dosya_uzantısı" -type f -exec mv {} "Hedef_dizin" \;
find /home/tolga/Photos -name "*.mp4" -type f -exec mv {} /home/tolga/Videos \;

 

CMD/PowerShell/Bash Alt Dizinlerden Dosya Kopyalama” üzerine 2 düşünce

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google fotoğrafı

Google hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s