A 制作了一个批处理文件以每月存档(使用 Windows 中的任务计划程序)Google Chrome 下载文件夹(在我的 Windows 7 64 位电脑上)。如果上个月没有修改,它应该将文件从某些文件类型移动到另一个文件夹。文件应移动到的文件夹取决于上次修改日期。
所以我制作了以下批处理文件:
@ECHO 关闭 CD C:\Users\Dagan\Downloads FORFILES /m (DIR (FOR %%G IN (*.doc *.pdf) do echo %%G) /A /O:D /T:C /B /D) /c "FOR %Q IN (@path ) DO ((SET year=%%~tG) && (SET year=%year~6,4%) && (SET month=%%~tG) && (SET month=%month~3,2%) && ( MOVE %%G "C:\Users\Dagan\DownloadArchives\"%year%"\"%month%"\") && (SET year=) && (SET month=))" /d -31 CD C:\Users\Dagan\Desktop
但它不起作用,我收到以下错误:
批量参数替换中路径运算符的以下用法无效: %~tG ) && (SET year=%year~6,4%) && (SET month=% %~tG) && (SET month=%month~3,2%) && (MOVE %%G "C:\Users\Dagan\DownloadArchives\"% 年%"\"%月%"\") && (SET 年=) && (SET 月=))" /d -31 对于有效格式类型 CALL /? 或为/? ☺ 在这一点上不是预期的。
有人可以帮我吗?
PS:这是我的批处理文件,但现在格式化以便更好地阅读:
@ECHO 关闭 CD C:\Users\Dagan\Downloads 外形 /m ( 目录 ( 对于 %%G IN ( *.doc *.pdf ) 回显 %%G ) /A /O:D /T:C /B /D ) /C ” FOR %Q IN (@path) DO ( (SET 年=%%~tG) && (SET 年=%year~6,4%) && (SET 月=%%~tG) && (SET 月=%month~3,2%) && (MOVE %%G "C:\Users\Dagan\DownloadArchives\"%year%"\"%month%"\") && (SET 年=) && (SET 月=) ) " /d -31 CD C:\Users\Dagan\Desktop