在cmd窗口中:for %I in (command1) do command2
在批处理文件中:for %%I in (command1) do command2
(ABC) (A,B,C)
for语句以逗号为分隔符, (A,B,C)把 ABC 这个字符串切分成三个元素:A、B和C,由此决定了do后的语句将会被执行3次,而(ABC)执行一次;
for语句依次提取command1中的每一个元素,把它的值赋予形式变量I,带到do后的command2中参与命令的执行;
并且每次只提取一个元素,然后执行一次do后的命令语句,而无论这个元素是否被带到command2中参与了command2的运行;
当执行完一次do后的语句之后,再提取command1中的下一个元素,再执行一次command2,如此循环,直到command1中的所有元素都已经被提取完毕,该for语句才宣告执行结束。
常见用法
1,使用you-get批量下载B站视频
@echo off
for %%I in (1,2,3,4,5,6,7) do (you-get https://www.bilibili.com/video/av47362713?p=%%I)
pause
2,搜索当前目录下有哪些文件?
@echo off
for %%i in (*.*) do echo "%%i"
pause
3,搜索当前目录下所有的文本文件?
@echo off
for %%i in (*.txt) do echo "%%i"
pause