⑴ BAT/CMD中将命令执行结果赋值给变量
@echooff&color0d&
ipconfig>ip.txt
for/f"delims="%%ain(ip.txt)do(
setip=%%a
echo!ip!
)
pause>nul
::1.将ipconfig的结果输出保存到文本
::2.再用for语句把文本内的数据赋值给变量ip
::3.最后在输出变量ip
::中国批处理脚本联盟
⑵ bat里头能够把某个命令的输出赋值给变量么
可以利用for命令获取
比如列出当前目录中的目录名,用
dir/ad/b
现在要赋值,获取最后一个目录名
for/f"delims="%%ain('dir/ad/b/on')dosetvar=%%a
⑶ 怎样在for循环变量中,将循环变量赋值给一个变量 批处理 bat
1、使用=号进行赋值,会将等号右边的值付给左面,比如x=13,则x就是13了。
⑷ bat脚本如何将命令执行的结果赋值给变量
这个问题也曾困扰我很久,后来发现只有两条路可走
一是通过临时文件做中转, 用这种方式赋值 set /p 变量=<临时文件
还有一种方式就是通过强大的for 命令,在 do 语句中来 set
⑸ bat如何赋值
比如执行echo %time% 得到的显示时间为 18:57:44.10 即18点57分44秒10毫秒;
%time:~0,2% 是提取%time%中的前两个字符,即小时值;
%time:~3,2% 是从%time%中的第三个字符后开始提取两个字符,即分钟值;
%time:~6,2% 是从%time%中的第六个字符后开始提取两个字符,即秒数值;
字符提取问题可以查看set/?命令;
举个例子吧!
set str=MyNameIsLuHongLein
echo %str:~2,4% //提取str中第二个字符后的四个字符,即显示 Name
echo %str:~-10% //显示str中最后十个字符,即 LuHongLein
echo %str:~2,-10% //从第二个字符后开始提取,但去除最后的十个字符,将显示 NameIs
⑹ 在bat文件中如何动态给变量赋值以及读取变量
@for /f "tokens=15" %%i in ('ipconfig') do @set var=%%i & goto a
:a
@echo %var%
pause
费了我不少力气,我本机已测试成功!得到的是VPN的IP
@for /f "tokens=3,4* delims=. " %%a in ('wmic nicconfig get Description^,IPAddress') do if %%a==Interface set a=%%b.%%c
set b=%a:{"=%
echo %b:"}=%
⑺ 在.bat脚本中如何将一个命令的返回结果传给一个变量
1、首先用记事本新建一个文件夹。
注意事项:
批处理文件的扩展名为bat 或cmd。目前比较常见的批处理包含两类:DOS批处理和PS批处理。应用于DOS和Windows系统中。