❶ Bat批处理怎么从txt中随机提取一个字符并设为变量
@echo off
setlocal EnableDelayedExpansion
::从 file.txt 中读取文本
set /p str=<file.txt
::显示文本
echo %str%
::创建用于储存长度的变量
set /a len=0
::获取 str 变量的长度 储存到 len 中
call :strlen len str
::显示文本长度
echo 文本长度 = %len%
::生成从[0到len)的随机数
:: 先创建随机数(0~65535)
set rand=%random%
:: 显示随机数
echo 随机数 = %rand%
:: 将随机数与len求余数(对于有5个字的文本会生成[0,4]的区间)
set /a choose=%rand%%%%len%
:: 显示选择的数字
echo 选择第 %choose% 个索引(0表示第1个字,1表示第2个字)
::显示文本中根据随机数选择的字符(截取
echo !str:~%choose%,1!
pause
::这里是获取文本总长度的函数
:strlen <resultVar> <stringVar>
(
(set^ tmp=!%~2!)
if defined tmp (
set "len=1"
for %%P in (4096 2048 1024 512 256 128 64 32 16 8 4 2 1) do (
if "!tmp:~%%P,1!" NEQ "" (
set /a "len+=%%P"
set "tmp=!tmp:~%%P!"
)
)
) ELSE (
set len=0
)
)
(
endlocal
set "%~1=%len%"
exit /b
)
❷ 在bat批处理中输入某一个文件的路径作为一个变量,怎么才...
2个常用办法
1:打开这个记事本,文件-另存为-在保存类型里面选择
所有文件-在文件名后面加上.bat
2:打开一个文件夹--工具--文件夹选项--查看--去掉
隐藏已知文件类型的扩展名
上的勾,确定