String 使用文件夹名称和文件名嵌套Do循环的批处理
我希望在循环中递归执行一个命令,根据树结构中文件的文件夹名(即日期)在文件上设置metadadata标记。 基本上String 使用文件夹名称和文件名嵌套Do循环的批处理,string,for-loop,batch-file,String,For Loop,Batch File,我希望在循环中递归执行一个命令,根据树结构中文件的文件夹名(即日期)在文件上设置metadadata标记。 基本上 对于(*.mts)DO Exiftool-DateCreated=[文件夹名称]%G%%G中的/R[文件夹]%G 但是,我无法提取参数的文件夹名-%%~pG将提供整个路径-包括斜杠 因此,我想到了如下嵌套循环: FOR /d /r %%G IN (.) DO ( FOR %%H IN (*.mts) DO ( echo %%~nG %%~nH
对于(*.mts)DO Exiftool-DateCreated=[文件夹名称]%G%%G中的/R[文件夹]%G
但是,我无法提取参数的文件夹名-%%~pG
将提供整个路径-包括斜杠
因此,我想到了如下嵌套循环:
FOR /d /r %%G IN (.) DO (
FOR %%H IN (*.mts) DO (
echo %%~nG %%~nH
)
)
%%~nG
将报告文件夹名称,但%%H
不可用-输出如下所示:
(对于(*.mts)DO中的%H(echo 2017-11-12%~nH))
也许第二个for循环不知道从哪里开始-我怎么告诉它
FOR %%H IN (*.mts) DO (
将在当前目录中查找.mts
文件
您想查看当前的%%G
目录,请使用
FOR %%H IN ("%%G\*.mts") DO (
for/R[文件夹]%G in(*.mts)do for%%H in(“%%~pG.”)do echo文件:“%%%~nxG”;家长:“%%~nsh”
谢谢正是我需要的。