@echo off
::启用延迟环境变量扩展
setlocal enabledelayedexpansion
::文件名
set FILE_NAME=%1%
::文件大小(Mb)
set MB=%2%
if "" == "%FILE_NAME%" goto NAME_EMPTY
if "" == "%MB%" goto MB_ERROR
::限制文件大小为[1, 150]M之间
if %MB% LSS 1 goto MB_ERROR
if %MB% GTR 150 goto MB_ERROR
::文件大小单位转换(Mb转为字节)
set /a FILE_SIZE=%MB%*1024*1024
::创建文件
fsutil file createnew %FILE_NAME% %FILE_SIZE%
::写随机数
set MIN=0
set MAX=9
set /a MOD=!MAX!-!MIN!+1
set NUM_STR=
for /l %%i in (1,1,128) do (
set /a NUM=!random!%%!MOD!+!MIN!
set NUM_STR=!NUM_STR!!NUM!
)
echo !NUM_STR! >> %FILE_NAME%
goto END
:NAME_EMPTY
echo.
echo @param1 filename is empty
goto END
:MB_ERROR
echo.
echo @param2 file size(Mb) is not in range [1, 150]
goto END
:END
用法:make_random_file.bat test1.txt 25,第1个参数指定文件名为test1.txt,第2个参数指定文件大小为25M。
批量生成随机大文件
本文介绍了一个批处理脚本,用于生成指定大小的随机内容文件。脚本接收两个参数:目标文件名及文件大小(范围1到150MB)。通过使用随机数填充文件,并确保了文件大小和名称的有效性。
1944

被折叠的 条评论
为什么被折叠?



