我需要你的帮助。我尝试将几个文件复制到一个带有随机数字名称的文件夹,例如:
xcopy /Y .\*.* .\new\%random%%random%%random%.*
比得到这个输出:
.\error2.exe
.\icon_error.ico
.\icon_static.ico
.\opsec.exe
.\static2.EXE
5 File(s) copied
当我对dir /B
目录执行new
命令时,我明白了这一点:
6263226566221.exe
6263226566221.ico
所以基本上缺少3个文件,我尝试在没有/Y
参数的情况下再次运行它并且它问我Do you want to overwrite the existing file?
。
如何跳过这个问题,我需要一个简单,轻量级的解决方案来解决这个问题!
谢谢。
答案 0 :(得分:0)
此批处理文件会将当前文件夹中的每个文件xcopy复制到.\new
,不包括其自身
新名称将是指定常量长度的随机数(必要时填充前导零)
@Echo off&SetLocal EnableExtensions EnableDelayedExpansion
Set Nulls=00000000000000000000
Set Len=10
For %%A in (*) Do (
Set Num=%Nulls%!Random!!Random!!Random!!Random!
Echo xcopy /Y "%%A" ".\new\!Num:~-%Len%!%%~xA"
)
Pause
如果输出看起来没问题,请删除xcopy前面的回声。