for 参数 %%变量名 in (相关文件或命令) do 执行的命令
for %i in (*) do @echo %i 只显示所有当前目录的文件
for /d %i in (*) do @echo %i 显示所有当前目录的目录
for /r %i in (*) do @echo %i 显示所有目录(包括子目录)的文件
for /r c: %i in (*) do @echo %i /r可以指定路径
for /l %i in (1,1,5) do start cmd (1,1,5)迭代数值范围,循环
含有/F的for详细说明(默认是以空格或tab分隔的)文件——行——列
含有/F的for有很大的用处,在批处理中使用的最多,用法如下:
格式:
FOR /F ["options"] %%i IN (file) DO command
FOR /F ["options"] %%i IN ("string") DO command
FOR /F ["options"] %%i IN (command) DO command
这个可能是最常用的,也是最强的命令,主要用来处理文件和一些命令的输出结果。
file代表一个或多个文件
string 代表字符串
command代表命令
["options"] 可选
a.txt的内容:
第1行第1列 第1行第2列 第1行第3列
第2行第1列 第2行第2列 第2行第3列 //如何只获取中间的内容
第3行第1列 第3行第2列 第3行第3列
for /f "skip= ? eol=? tokens=? delims= " %i in (a.txt) do @echo %i
for /f "tokens=*" %i in (a.txt) do @echo %i
补充:
DOS命令
内部命令:copy dir del type path break start
外部命令:net cmd at sort attrib fc find
在批处理中的应用非常广泛。
组合命令&&的优先级没有管道命令>的优先级高
for %i in (*) do @echo %i 只显示所有当前目录的文件
for /d %i in (*) do @echo %i 显示所有当前目录的目录
for /r %i in (*) do @echo %i 显示所有目录(包括子目录)的文件
for /r c: %i in (*) do @echo %i /r可以指定路径
for /l %i in (1,1,5) do start cmd (1,1,5)迭代数值范围,循环
含有/F的for详细说明(默认是以空格或tab分隔的)文件——行——列
含有/F的for有很大的用处,在批处理中使用的最多,用法如下:
格式:
FOR /F ["options"] %%i IN (file) DO command
FOR /F ["options"] %%i IN ("string") DO command
FOR /F ["options"] %%i IN (command) DO command
这个可能是最常用的,也是最强的命令,主要用来处理文件和一些命令的输出结果。
file代表一个或多个文件
string 代表字符串
command代表命令
["options"] 可选
a.txt的内容:
第1行第1列 第1行第2列 第1行第3列
第2行第1列 第2行第2列 第2行第3列 //如何只获取中间的内容
第3行第1列 第3行第2列 第3行第3列
for /f "skip= ? eol=? tokens=? delims= " %i in (a.txt) do @echo %i
for /f "tokens=*" %i in (a.txt) do @echo %i
补充:
DOS命令
内部命令:copy dir del type path break start
外部命令:net cmd at sort attrib fc find
在批处理中的应用非常广泛。
组合命令&&的优先级没有管道命令>的优先级高