Saya ingin menggunakan xcopy pada mesin Windows untuk menarik semua file dengan ekstensi .png ke dalam satu direktori.
Saya sudah mencoba xcopy C:\folder\*.png /s C:\png\
, tetapi tetap menyimpan sub-direktori di dalam folder \, (misalnya dalam C: \ png, ada C: \ png \ a \ b \ c \ img.png) yang tidak saya inginkan. Saya hanya ingin semua .png di dalam C: \ png tanpa itu mempertahankan struktur direktori yang ada di folder C: \.
Jawaban:
Ini bisa dilakukan dengan baik
for
:Tidak ada yang mewah.
sumber
%f
ini?f" was unexpected at this time
. Berubah%f
untuk%%f
bekerja. Namun, saya menjalankan ini dalam file batch: Jika Anda menggunakan perintah FOR di baris perintah daripada di program batch, gunakan hanya tanda satu persen:% G bukan %% G. ss64.com/nt/for.htmlfor
dapat menjadi bingung tentang dua perbedaand
dalam hal-hal seperti%~dd
. Thefor
dokumentasi menyarankan untuk menggunakan huruf besar huruf untuk variabel kebingungan menghindari, namun substitusi masih jelas dibedakan dari nama variabel, saya pikir.Jika Anda telah menginstal cygwin, ini akan menjadi pekerjaan untuk menemukan:
(meskipun itu akan mengalami masalah jika salah satu nama file memiliki spasi di dalamnya - Anda akan menemukan beberapa varian dari sebuah
find
perintah yang akan bekerja dalam semua keadaan sekalipun)Jika Anda menjalankan Vista, 2003 atau 2008 maka "forfile" yang kurang fleksibel namun tetap bermanfaat adalah teman Anda. Sesuatu seperti:
Catatan: Saya belum menguji salah satu dari perintah di atas, tetapi secara teori mereka harus bekerja ...
sumber