中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-08 15:57
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 求助关于批处理器读取TXT文件并替换的办法! 查看 951 回复 7
楼 主 求助关于批处理器读取TXT文件并替换的办法! 发表于 2008-04-05 10:19 ·  中国 广东 深圳 龙岗区 电信
初级用户
积分 31
发帖 15
注册 2007-11-26 15:40
18年会员
UID 103825
性别 男
状态 离线
2008040417380252754001
2008040417350252754001
2008040317350252754001
2008040217350252754001
2008040117350252754001
2008040113230252754001
2008040213230252754001
2008040313230252754001
2008040413230252754001
2008040411420252754001
2008040311420252754001
2008040211420252754001
2008040111420252754001
2008040111400252754001
2008040407230252754001
2008040307230252754001
2008040207230252754001
2008040107220252754001


TXT文件内容格式如上,如最后一行表示:2008年04月01日07:22分
我想请教高手,如何提取每行中的这个时间(07:22),并通过判断把他们修改为自己指定的一个范围内的随机数字。
谢谢!
2 发表于 2008-04-05 12:16 ·  中国 陕西 西安 电信
铂金会员
★★★★
积分 5,212
发帖 2,478
注册 2007-02-08 23:39
19年会员
UID 79003
性别 男
状态 离线
set /?



也可以为扩展名指定子字符串。

%PATH:~10,5%

会扩展 PATH 环境变量,然后只使用在扩展结果中从第 11 个(偏
移量 10)字符开始的五个字符。如果没有指定长度,则采用默认
值,即变量数值的余数。如果两个数字(偏移量和长度)都是负数,
使用的数字则是环境变量数值长度加上指定的偏移量或长度。

%PATH:~-10%

会提取 PATH 变量的最后十个字符。

%PATH:~0,-2%

会提取 PATH 变量的所有字符,除了最后两个。
3 发表于 2008-04-05 14:22 ·  中国 广东 深圳 龙岗区 电信
初级用户
积分 31
发帖 15
注册 2007-11-26 15:40
18年会员
UID 103825
性别 男
状态 离线
非常感觉!
4 发表于 2008-04-07 19:03 ·  中国 甘肃 兰州 电信
初级用户
积分 47
发帖 31
注册 2008-03-17 19:04
18年会员
UID 113236
性别 男
状态 离线
看不懂啊。不过学习了。
5 发表于 2008-04-26 14:37 ·  中国 辽宁 锦州 联通
中级用户
★★
积分 228
发帖 106
注册 2008-04-26 12:34
18年会员
UID 117003
性别 男
状态 离线
看不懂,没法用。
6 发表于 2008-04-26 15:24 ·  中国 山东 淄博 联通
银牌会员
★★★
积分 1,604
发帖 646
注册 2008-04-13 23:39
18年会员
UID 115804
性别 男
状态 离线
根本没看懂题目,没办法写。。。。 指定范围是 几到几?~能够说得详细一点的话就好了。
7 发表于 2008-04-26 17:50 ·  中国 湖南 娄底 电信
银牌会员
★★★
积分 2,268
发帖 879
注册 2006-12-19 16:23
19年会员
UID 73968
性别 男
状态 离线

@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%a in (a.txt) do (
set var=%%a
set /a s=!random!%%24,f=!random!%%60
set s=0!s!&set f=0!f!
echo !var:~0,8!!s:~-2!!f:~-2!!var:~12!
)
pause
致精致简!
8 发表于 2008-04-26 19:11 ·  中国 辽宁 锦州 联通
中级用户
★★
积分 228
发帖 106
注册 2008-04-26 12:34
18年会员
UID 117003
性别 男
状态 离线
26933062的这个完整、清晰,回去好好学习一下。
论坛跳转: