批量循环遍历所有文件和子文件夹
Batch Loop Through All Files And Subfolders
所以我正在处理多个批处理程序,我需要知道如何遍历所有文件,包括子文件夹中的文件。但是,我无法这样做。其中一个需要这个的程序是使用命令 "certutil -encode",它对该文件夹和子文件夹中的所有文件进行编码,并使用命令 "certutil -decode" 解码,这是我到目前为止得到的代码(这段代码是在一个循环中):
set file=C:\Extras\Encode\*.txt
certutil -encode C:\Extras\Encode\*.txt C:\Extras\Encoded\*.b64
但是这不起作用,因为它只循环 C:\Extras\Encode 但不测试 C:\Extras\Encode\Subfolder\ 等子文件夹中的那些,所以我该怎么办做什么?
编辑:我知道输出为 C:\Extras\Encoded*.hex 的第二部分是错误的。
一般来说,
for /f "delims=" %%a in ('dir /s /b "C:\extras\encode\*.txt"') do echo %%a
应该为每个文件名提供 %%a 匹配子树中的掩码。您可以根据需要将修改后的引用 %%~da %%~pa %%~na %%~xa %%~dpnxa 用于驱动器、路径、名称、扩展名或所有组合。
具体情况因应用而异。
所以我正在处理多个批处理程序,我需要知道如何遍历所有文件,包括子文件夹中的文件。但是,我无法这样做。其中一个需要这个的程序是使用命令 "certutil -encode",它对该文件夹和子文件夹中的所有文件进行编码,并使用命令 "certutil -decode" 解码,这是我到目前为止得到的代码(这段代码是在一个循环中):
set file=C:\Extras\Encode\*.txt
certutil -encode C:\Extras\Encode\*.txt C:\Extras\Encoded\*.b64
但是这不起作用,因为它只循环 C:\Extras\Encode 但不测试 C:\Extras\Encode\Subfolder\ 等子文件夹中的那些,所以我该怎么办做什么?
编辑:我知道输出为 C:\Extras\Encoded*.hex 的第二部分是错误的。
一般来说,
for /f "delims=" %%a in ('dir /s /b "C:\extras\encode\*.txt"') do echo %%a
应该为每个文件名提供 %%a 匹配子树中的掩码。您可以根据需要将修改后的引用 %%~da %%~pa %%~na %%~xa %%~dpnxa 用于驱动器、路径、名称、扩展名或所有组合。
具体情况因应用而异。