Как сделать некоторые действия для каждого файла в папке?

В моих перемещениях по США я всегда слышал BĪŌS (-OHS). До произношения акронимов идут, я обычно следую тому же правилу, что Zoredache описал в его комментарии.

1
задан 4 August 2009 в 19:51
2 ответа
FOR %%F in (*.foo) DO command %%F

Управляет командой command на с каждым именем файла как первый аргумент.

Помните это, когда в пакетном файле необходимо будет использовать %% где на командной строке, вышеупомянутое только использовало бы единственный %.

При необходимости в полном пути, или получить файлы рекурсивно используйте /R переключатель для команды.

Пример:

C:\WINDOWS> FOR %F in (*.exe) DO @echo %F

explorer.exe
FramePkg.exe
gsk7bui.exe
hh.exe
IsUninst.exe
NOTEPAD.EXE
notepad1.exe
regedit.exe
slrundll.exe
TASKMAN.EXE
twunk_16.exe
twunk_32.exe
uninst.exe
winhelp.exe
winhlp32.exe

C:\WINDOWS> FOR /R %F in (*.exe) DO @echo %F

C:\WINDOWS\explorer.exe
C:\WINDOWS\FramePkg.exe
C:\WINDOWS\gsk7bui.exe
C:\WINDOWS\hh.exe
C:\WINDOWS\IsUninst.exe
C:\WINDOWS\NOTEPAD.EXE
C:\WINDOWS\notepad1.exe
C:\WINDOWS\regedit.exe
C:\WINDOWS\slrundll.exe
C:\WINDOWS\TASKMAN.EXE
C:\WINDOWS\twunk_16.exe
C:\WINDOWS\twunk_32.exe
C:\WINDOWS\uninst.exe
C:\WINDOWS\winhelp.exe
C:\WINDOWS\winhlp32.exe
... [партии больше]...
C:\WINDOWS\system32\accwiz.exe
C:\WINDOWS\system32\actmovie.exe
C:\WINDOWS\system32\ahui.exe
C:\WINDOWS\system32\alg.exe
C:\WINDOWS\system32\append.exe
C:\WINDOWS\system32\arp.exe
C:\WINDOWS\system32\asr_fmt.exe
C:\WINDOWS\system32\asr_ldm.exe
... [и т.д.]
C:\WINDOWS\system32\dllcache\accwiz.exe
C:\WINDOWS\system32\dllcache\actmovie.exe
C:\WINDOWS\system32\dllcache\admin.exe
C:\WINDOWS\system32\dllcache\agentsvr.exe
C:\WINDOWS\system32\dllcache\ahui.exe
C:\WINDOWS\system32\dllcache\alg.exe
C:\WINDOWS\system32\dllcache\append.exe
C:\WINDOWS\system32\dllcache\arp.exe
... [и т.д..]

4
ответ дан 3 December 2019 в 17:30

Можно использовать, ЧТОБЫ цикл выполнил действие с каждым файлом

FOR %%parameter IN (set) DO command 

Как

FOR %%G in ("C:\*") DO echo %%G
1
ответ дан 3 December 2019 в 17:30
  • 1
    Я должен затем заменить " C: *" часть " myfolder*.foo" правильно? –  Klaim 4 August 2009 в 19:58
  • 2
    Корректный. Если существуют пробелы в пути, я полагаю, что необходимо использовать ^ перед ними как символ ESC –  Kevin Kuphal 4 August 2009 в 20:00

Теги

Похожие вопросы