我的文件旨在复制自身,然后重命名目录中的所有批处理文件。因为它无休止地执行此操作,我让它循环复制文件,然后重命名它。 不过,它会在一段时间后退出。
这是我的代码:
@echo off
:place1
xcopy /y C:\ProgramData\Windows_PowerShell\Win_PowerShell.bat C:\USer\Enterusername\Desktop\Afolder\%random%*.bat
cd C:\Users\Enterusername\Desktop\Afolder\
setlocal disableDelayedExpansion
set "chars=ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
for /f "eol=: delims=" %%F in ('dir /b /a-d *bat') do call :renameFile "%%F"
exit /b
:renameFile
setlocal enableDelayedExpansion
:retry
set "name="
for /l %%N in (1 1 8) do (
set /a I=!random!%%36
for %%I in (!I!) do set "name=!name!!chars:~%%I,1!"
)
echo if exist !name!.bat goto :retry
endlocal & ren %1 %name%.bat
goto place1