for /r %i in (*) do @echo %~ni
atau
forfiles /s /c "cmd /c if @isdir==FALSE noquotes.bat @fname"
dengan asumsi file noquotes.bat
dalam % PATH% Anda dengan konten ini
@echo %~1
untuk / r pendekatan dijelaskan
for /r
berjalan direktori saat ini secara rekursif (Anda dapat menentukan direktori for /r drive:\path\
, direktori saat ini diasumsikan) dan mengeksekusi perintah yang ditentukan oleh do untuk setiap file yang cocok dalam set (*)
. Set (.)
hanya akan cocok dengan direktori. @echo% ~ ni Perintah ini berfungsi apa adanya dari prompt. Gandakan kutipan Anda jika Anda memasukkannya ke dalam file batch. yaitufor /r %%i in (*) do @echo %%~ni
Pendekatan forfiles menjelaskan
/s
menghitung saat ini dan semua subdirektori
/c
mengeksekusi perintah di dalam tanda kutip
@isdir
dan @fname
merupakan simbol yang dipancarkan ke dalam string perintah
File batch tambahan noquotes.bat
membantu dengan menghapus tanda kutip ganda dengan% ~ 1 (parameter 1)
forfiles
juga memungkinkan Anda menentukan jalur untuk memulai diforfiles /P C:\Windows ...