我有相同文件结构的子文件夹的变化。每个文件夹中的一个文件是包含逗号分隔信息的metadata.txt文件。我需要拉出第8个值并将其设置为变量%x,然后在后续命令中将该变量用作开关。
metadata.txt文件如下所示:
91,Chocolate,10,Large,Easy Bake Oven,350,0,39.9475,Cake,1.0.0.1,C:\CakeRecords,2044449,2(10-50),1,
步骤1:为数据中的第8个值分配可变量x(%x)。在这种情况下,它是39.9475
步骤2:使用变量作为开关运行EasyBake命令
示例:EasyBake.exe 39.9475
我将在根文件夹中运行此命令一次,让它通过每个子文件夹在每个子文件夹中运行命令。我已经运行了一个命令来创建一个新文件夹' NewRecipe'在每个子文件夹中,所以我对如何在文件夹之间跳转以运行脚本有一个不错的想法,但任何建议也将在那里受到赞赏。
FOR /d %A IN ("N:\old recipes\*") DO mkdir "%A\NewRecipe"
答案 0 :(得分:0)
@ECHO OFF
SETLOCAL
SET "sourcedir=U:\sourcedir"
SET "filename1=%sourcedir%\metadata.txt"
FOR /f "delims=" %%a IN (
'dir /b /s /a-d "%filename1%" '
) DO (
FOR /f "usebackqtokens=8delims=," %%t IN ("%%a") DO (
ECHO take your choice
ECHO PUSHD "%%~dpa"
ECHO MD newrecipe
ECHO easybake.exe %%t
ECHO POPD
ECHO ================
)
)
GOTO :EOF
只需显示所需说明。
找到每个目标文件,获取%%t
的相应字段,然后使用%%a