我有一個包含像遍歷批處理某些文件
file.xxx.v3.0.sql
file.xxx.v3.0.sql
file.xxx.v3.0.sql
file.xxx.v3.0.sql
.sql文件在.bat文件中的目錄會怎樣我經歷了所有的目錄中有啓動文件循環「的文件。」並以「.v3.0.sql」結尾?
到目前爲止,我已經得到了
for /f %%b in ('dir /b /s "%apppath%\files\*.sql"') do call :import %%b
我有一個包含像遍歷批處理某些文件
file.xxx.v3.0.sql
file.xxx.v3.0.sql
file.xxx.v3.0.sql
file.xxx.v3.0.sql
.sql文件在.bat文件中的目錄會怎樣我經歷了所有的目錄中有啓動文件循環「的文件。」並以「.v3.0.sql」結尾?
到目前爲止,我已經得到了
for /f %%b in ('dir /b /s "%apppath%\files\*.sql"') do call :import %%b
放棄了for /f
路線。有龍(對於Unicode字符和空格,特別是 - 最好不要接受任何壞習慣)。
您可以使用普通的舊for
,可就好了遍歷文件:
for %%b in (%apppath%\files\file.*.v3.0.sql) do (
call :import %%b
)
這應該工作你的情況:
for /f %%b in ('dir /b /s "%apppath%\files\file.*.v3.0.sql"') do call :import %%b
您還可以使用大括號這樣的:
for /f %%b in ('dir /b /s "%apppath%\files\file.*.v3.0.sql"') do (
call :import %%b
...
)
+1不要忘記提及只存在於普通'for'循環中的龍。 (在循環中修改的文件可能會被處理兩次)。在所有cmd.exe **命令中都隱藏着龍:)** –
那麼,修改你正在迭代的任何語言的集合並不是很明智;) – Joey
同意,但有些人仍然會嘗試。 **:P ** –