中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-08 20:10
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 怎样自动替换bat中的变量 查看 1,111 回复 8
楼 主 怎样自动替换bat中的变量 发表于 2008-05-12 12:14 ·  印度 马哈拉施特拉邦 孟买郊区县 腾讯云
初级用户
积分 28
发帖 11
注册 2008-01-28 16:29
18年会员
UID 109713
性别 女
状态 离线
想把以下代码中的分钟数增大2,如 8:12:36,变为8:14:36,该怎么写?
@echo off
echo %time%>t.txt
for /f "tokens=2 delims=:" %%i in (t.txt) do (set t=%%i )
echo %t%
set /a t2=%t%+2
echo %t2%
set a=%time%
set b=%a:t=t2%
echo %b%
pause
2 发表于 2008-05-12 13:09 ·  中国 上海 电信
初级用户
★★
积分 160
发帖 81
注册 2006-07-27 17:52
20年会员
UID 59377
性别 男
状态 离线
3 发表于 2008-05-12 15:32 ·  中国 天津 电信
初级用户
积分 28
发帖 11
注册 2008-01-28 16:29
18年会员
UID 109713
性别 女
状态 离线
请帮忙按我的思路修改一下好吗?
4 发表于 2008-05-13 08:16 ·  印度 马哈拉施特拉邦 孟买郊区县 腾讯云
初级用户
积分 28
发帖 11
注册 2008-01-28 16:29
18年会员
UID 109713
性别 女
状态 离线
我想借此请教替换变量的问题,set b=%a:t=t2%这一句替换不了,请赐教,拜托 !
5 发表于 2008-05-13 08:49 ·  中国 陕西 西安 电信
银牌会员
★★★★
钻石会员
积分 2,278
发帖 1,020
注册 2007-11-19 13:34
18年会员
UID 103127
性别 男
状态 离线
@echo off
echo %time%>t.txt
for /f "tokens=2 delims=:" %%i in (t.txt) do set "t=%%i"
echo %t%
set /a t2=%t%+2
echo %t2%
set a=%time%
call set b=%%a:%t%=%t2%%%
echo %b%
pause
山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
6 发表于 2008-05-13 09:49 ·  中国 天津 电信
初级用户
积分 28
发帖 11
注册 2008-01-28 16:29
18年会员
UID 109713
性别 女
状态 离线
谢谢 plp626 并请教:
"t=%%i" 这句为什么加引号呢?
call set b=%%a:%t%=%t2%%% 这句为什么用call及%%呢?
7 发表于 2008-05-13 10:28 ·  中国 陕西 西安 电信
银牌会员
★★★★
钻石会员
积分 2,278
发帖 1,020
注册 2007-11-19 13:34
18年会员
UID 103127
性别 男
状态 离线
你(set t=%%i )这句i后面实际上还有个空格,所有t值==%%i空格,这会得不到你要的结果。
用"t=%%i"是让你养成个好习惯,这样不容易出错。
call .....?
你观察下面代码自己体会

@echo off
set d=abc
echo %d%
echo %%d%%
call echo %%d%%


call的作用就在于此。
山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
8 发表于 2008-05-13 14:06 ·  中国 天津 电信
初级用户
积分 28
发帖 11
注册 2008-01-28 16:29
18年会员
UID 109713
性别 女
状态 离线
再次感谢 plp626 !
9 发表于 2008-05-26 22:53 ·  中国 广东 深圳 宝安区 电信
初级用户
★★
积分 188
发帖 96
注册 2008-03-11 00:59
18年会员
UID 112592
性别 男
状态 离线
call是什么意思?
论坛跳转: