bat批处理中怎么枚举文件夹中所有名为data**.in的文件?*代表长度未知字符串

bat批处理中怎么枚举文件夹中所有名为data**.in的文件?*代表长度未知字符串,第1张

把下面的批处理存为show_dataini.bat。

@echo off

@for /f "delims=" %%i in ('dir data*.ini /b') do @echo %%i

这句for会把dir data*.ini /b语句的返回结果逐一得到,通过@echo %%i逐个输出。进而漏州指可以对每个ini文件进行独立处理,比如改为:

@echo off

@for /迹纯f "delims=" %%i in ('dir data*.ini /b') do (

@echo ***************%%i***************

@type %%i

@echo ***********************************

除了返配格式化输出文件名,还会格式化输出文件内容。

大致就是这么个意思。

@echo off

if "%1"=="" goto SearchFile

:: 判断是否有输入升纤凯参数,如竖卖果没有默认枚举工作目录

:CheckArg

:: 检查当前参数段

if "%1"=="" goto End

:: 如果当前参数为空则退出批处理

cd %1>nul 2>nul &&cd.. &&goto SearchFile

:: 检查当前参数是目录还是文件,是目录则跳到SearchFile段

dir %1>nul 2>nul || goto error

:: 检查当前参数是否为有效文件,否则跳到Error段

set file=%1

:: 设置file变量为当前参数

call :Command

:: 跳转Command段

:NextPar

:: 下个参数段

shift /1

:: 下个参数移至当前参数

goto CheckArg

:: 跳转CheckArg段

:SearchFile

:: 枚举目录段

for /R %1 %%i in (*.wav) do set file=%%i &&call :Command

:: 枚举目录中指定类型的文件

goto NextPar

:: 跳转NextPar段

:Command

:: 命令段

echo 当前被处吵唤理文件为%file%

:: 命令放在这里

exit /b

:: 返回调用前的指令

:Error

:: 参数错误段

echo %1 is not a valid argument!

:: 输出参数错误提示

pause

:: 暂停程序

goto NextPar

:: 继续下个参数

:End

echo All Files Down . . .

pause


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/12299614.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-22
下一篇2023-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存