=============参数 /d (参数只能显示当前目录下的目录名字)=================== rem 显示d:\work\目录下与*.txt相匹配的文件(如果报错就%i-> %%i) for %i in (d:\work\*.txt) do @echo %i rem 显示c盘根目录下的所有目录 for /d %i in (c:\*) do echo %i rem 显示当前目录下名字只有1-3个字母的目录 for /d %i in (???) do echo %i =============参数 /R (搜索指定路径及所有子目录中与set相符合的所有文件)================= rem 把C盘根目录,和每个目录的子目录下面全部的EXE文件都列出来了!!!! for /r c:\ %i in (*.exe) do echo %i rem 枚举了c盘所有目录 for /r c:\ %i in (boot.ini) do echo %i rem 枚举d\backup目录 for /r d:\backup %i in (1) do echo %i rem 很好的搜索命令,列举boot.ini存在的目录 for /r c:\ %i in (boot.ini) do if exist %i echo %i =============参数 /L (该集表示以增量形式从开始到结束的一个数字序列。可以使用负的 Step)=============== rem 打开5个CMD窗口 for /l %%i in (1,1,5) do start cmd rem 建立从1~5共5个文件夹 for /l %i in (1,1,5) do md %i rem 建立从1~5共5个文件夹 for /l %i in (1,1,5) do rd /q %i =============参数 /F (使用文件解析来处理命令输出、字符串及文件内容。)=============== rem 也可建立个BAT文件代码如下: @echo off echo ^"1111>temp.txt echo "2222">>temp.txt echo 3333^">>temp.txt echo "4444"44>>temp.txt echo ^"55"55"55>>temp.txt rem 查看文件内容 过滤引号~i(最前和最后引号) FOR /F "delims=" %i IN (temp.txt) DO echo %~i rem 显示文件完整路径名(如C:\iNodeLog而不是iNodeLog) FOR /F "delims==" %i IN (‘dir /b‘) DO @echo %~fi %~I - 删除任何引号("),扩展 %I %~fI - 将 %I 扩展到一个完全合格的路径名 %~dI - 仅将 %I 扩展到一个驱动器号 %~pI - 仅将 %I 扩展到一个路径 %~nI - 仅将 %I 扩展到一个文件名 %~xI - 仅将 %I 扩展到一个文件扩展名 %~sI - 扩展的路径只含有短名 %~aI - 将 %I 扩展到文件的文件属性 %~tI - 将 %I 扩展到文件的日期/时间 %~zI - 将 %I 扩展到文件的大小 %~$PATH:I - 查找列在路径环境变量的目录,并将 %I 扩展 到找到的第一个完全合格的名称。如果环境变量名 未被定义,或者没有找到文件,此组合键会扩展到 空字符串 可以组合修饰符来得到多重结果: %~dpI - 仅将 %I 扩展到一个驱动器号和路径 %~nxI - 仅将 %I 扩展到一个文件名和扩展名 %~fsI - 仅将 %I 扩展到一个带有短名的完整路径名 %~dp$PATH:I - 搜索列在路径环境变量的目录,并将 %I 扩展 到找到的第一个驱动器号和路径。 %~ftzaI - 将 %I 扩展到类似输出线路的 DIR rem 分析命令输出的例子:(会枚举当前环境中的环境变量名称和值。) FOR /F "usebackq tokens=1* delims==" %i IN (`set`) DO @echo [%i----%j] rem 分析字符串的例子: for /f "usebackq tokens=1,2,3* delims=-, " %i in (‘aa bb,cc-dd ee‘) do echo %i %j %k %l rem 分析文件的例子 FOR /F "usebackq eol=; tokens=1,2* delims=,- " %i in ("c:\temp.txt") do echo %i %j %k
时间: 2024-10-21 08:01:20