不确定 setlocal 的用途,但我在一个脚本示例中找到了它,用于在 for 循环中需要多个命令的其他内容。
Filelist.txt 包含一个文件列表,其中包含共享的完整文件路径。
例如:\\FileShare\Division\Project\file.txt
setlocal enabledelayedexpansion
for /f "delims=" %%i in (filelist.txt) do (
mkdir "D:\Archive\%%~dpi"
move "%%i" "D:\Archive\%%i")
endlocal
该脚本获取 filelist.txt 中的文件(逐行)并复制路径的目录结构,然后移动文件。使用上面的示例,它会创建目录 D:\Archive\FileShare\Division\Project\,然后将文件file.txt移动到该目录。
我从我在这里找到的不同任务的现有示例中将其拼凑在一起。有什么清理小窍门吗?
编辑:解决下面遗嘱中的评论。创建该脚本是为了处理由一年多未访问的文件生成的报告。这就是为什么它需要处理文件列表的原因,因为我想保持文件夹结构和所有其他文件完好无损。如果有某种方法可以将它集成到脚本中,那就太棒了!