【发布时间】:2015-07-28 20:30:12
【问题描述】:
我有一个批处理文件,可以移动一些东西并组织它们。我想在该批次的末尾添加一些代码,以将所有文件重命名为相同的名称,但日期除了以数字结尾之外。也许我不擅长搜索,因为我发誓这已经被覆盖了,但我就是找不到。总而言之,我需要帮助编写代码,将文件夹中没有最后日期的每个文件转换为将日期添加到末尾。所以它需要检查最后是否有 8 位数字,如果没有,则添加日期。我会发布我的批处理文件,以防你需要知道我在做什么
rem @echo off
SETLOCAL enableextensions
Set dat=Date
for %%x in (*.pdf) do (
set "_pdfname=%%x"
call :doAllWork
)
goto :eof
:doAllWork
ECHO start
start %_pdfname%
TIMEOUT /T 2 /NOBREAK
start select.vbs
TIMEOUT /T 1 /NOBREAK
start copy.vbs
TIMEOUT /T 1 /NOBREAK
for /F %%g in ('
wmic OS get LocalDateTime /value^|findstr "="
') do for /F %%G in ("%%g") do set "_%%G"
echo %_LocalDateTime:~0,14%
type NUL > TextFiles\%_LocalDateTime:~0,14%.txt
start TextFiles\%_LocalDateTime:~0,14%.txt
TIMEOUT /T 2 /NOBREAK
ECHO close PDF
start close.vbs
TIMEOUT /T 2 /NOBREAK
start window.vbs
TIMEOUT /T 1 /NOBREAK
start paste.vbs
TIMEOUT /T 1 /NOBREAK
start save.vbs
TIMEOUT /T 1 /NOBREAK
start close.vbs
start enter.vbs
move /-y "%_pdfname%" "OldTimesheets\"
TIMEOUT /T 1 /NOBREAK
ECHO exit loop
if exist *.pdf (
goto :eof
) else (
goto :end
)
:end
cscript MessageBox.vbs "This will be shown in a popup."
所以最后,OldTimesheets 中的所有新 PDF 都需要重命名,但旧的 PDF 将有它们被放入其中的日期。 提前谢谢!这个社区总是很棒!
【问题讨论】:
标签: batch-file rename