我有大量的 Excel 文件,其文件名都以时间戳结尾,如下所示:
示例文件_2018_08_24_110222.xlsx
我想根据时间戳的月份和年份移动所有这些文件,但我希望文件夹名称为上个月。因此,对于上面的示例,我想创建一个名为 July2018 的文件夹并将该文件移动到该文件夹中。是否可以使用批处理文件来完成此操作?
我认为这将满足您的需要。我添加了一些注释,所以如果您不理解某行代码,请告诉我。
@ECHO OFF
REM get a list of the files
FOR %%F IN (*.xlsx) DO (
REM GET 2nd, 3rd and 4th parts of file name: examplefile_2018_08_24_110222.xlsx
FOR /F "tokens=2,3,4 delims=_" %%G IN ("%%~F") DO (
REM GET previous month and/or year
FOR /F "delims=" %%J IN ('powershell "(Get-Date %%H/%%I/%%G).AddMonths(-1).ToString('MMMMyyyy')"') DO (
REM make the directory
md "%%J" >nul 2>&1
REM move the file
move "%%~F" "%%J\"
)
)
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)