【发布时间】:2021-05-09 20:16:02
【问题描述】:
我有许多 pdf 文件需要复制、重命名和移动。
复制和移动作品——我只是不知道重命名部分是如何完成的。
文件如下所示:
2021-05-05_10-10-12-609_Testperson_Nancy_2512489996_19490816_OD_20210429112706.pdf
2021-06-05_11-11-12-135_Testperson_with_many _Names_0708681234_19490817_OD_20210429112715.pdf
我需要将它们重命名为:
251248-9996_19490816_OD_20210429112706.pdf
070868-1234_19490817_OD_20210429112715.pdf
因此需要从右侧的第四个_(没有第一个_)与[6] 和[7] 之间的- 子串。
这是我目前得到的:
SET input=c:\temp\rename\input
SET backup=c:\temp\rename\backup
SET output=c:\temp\rename\output
if not exist "%backup%" mkdir "%backup%"
for /f "tokens=*" %%F IN ('DIR /S /B "%input%\*.pdf"') DO (
xcopy /-y "%%F" "%backup%" & move "%%F" "%output%"
)
c:\temp\rename\input(对于原始文件)
c:\temp\rename\backup (原始文件的备份目录)
c:\temp\rename\output(重命名文件)
这必须在 Windows Server 上作为计划的批处理文件作业运行(我知道如何运行该作业)
【问题讨论】:
-
格式总是这样吗?
2021-05-05_10-10-12-609_Testperson_Nancy_2512489996_19490816_OD_20210429112706.pdf -
是的——但唯一固定的是最后四个“_”。 _0708681234_19490817_OD_20210429112715.pdf _0708684123_145521747587_OD_20210429112715.pdf
-
好的,你需要提供一些真实的场景,这是标准的抛出。
2021-06-05_11-11-12-135_Testperson_with_many _Names_0708681234_19490817_OD_20210429112715.pdf所以请提供实际示例,如果需要,您可以更改名称,但格式在这里很关键。 -
文件的第一部分可以根据人的名字改变字数。最后四个下划线将始终存在,但中间的数字/文本的长度可能会有所不同,除了第一个(例如 Mr. Croft 0708681234)该数字将始终为 10 个字符长。 2021-06-05_11-11-12-135_Jim_Johnson_Hansen_Croft_0708681234_19490817_OD_20210429112715.pdf 2021-05-05_10-10-12-609_John_Doe_2512489pdf196_1914_ABC_296_1914_ABC_20.pdf
-
所以
_没有固定数量?