|
wfy150
初级用户
 
积分 82
发帖 34
注册 2008-4-29 来自 江西
状态 离线
|
『楼 主』:
如何使用FOR和FIDNDTR来改变如下代码
我想把以下代码中Delay后面的数字都改成30,而且不改变它们的位置 
MoveTo 7,68
MoveTo 81,91
KeyDown 16,1
KeyDown 17,1
Delay 78
KeyUp 16,1
Delay 16
KeyUp 17,1
Delay 78
KeyDown 17,1
KeyDown 16,1
Delay 62
KeyUp 17,1
Delay 1562
KeyDown 49,1
Delay 157
KeyUp 49,1
|
|
2008-5-10 19:06 |
|
|
26933062
银牌会员
    
积分 2268
发帖 879
注册 2006-12-19
状态 离线
|
『第
2 楼』:
@echo off
for /f "tokens=1* delims= " %%a in (a.txt) do (
if /i "%%a"=="delay" (echo %%a 30) else echo %%a %%b
)
pause
此帖被 +3 点积分 点击查看详情 评分人:【 wfy150 】 | 分数: +1 | 时间:2008-5-10 19:39 | 评分人:【 nipo 】 | 分数: +2 | 时间:2008-5-10 23:53 |
|
|

致精致简! |
|
2008-5-10 19:14 |
|
|
wfy150
初级用户
 
积分 82
发帖 34
注册 2008-4-29 来自 江西
状态 离线
|
『第
3 楼』:
问下怎么把它输出的结果保存到.TXT中
|
|
2008-5-10 20:47 |
|
|
lxmxn
版主
       
积分 11386
发帖 4938
注册 2006-7-23
状态 离线
|
『第
4 楼』:
Originally posted by wfy150 at 2008-5-10 20:47:
问下怎么把它输出的结果保存到.TXT中 在每个 echo 命令后面加上一个重定向符(>>)即可。
|
|
2008-5-10 22:06 |
|
|
nipo
中级用户
  
积分 228
发帖 106
注册 2008-4-26
状态 离线
|
『第
5 楼』:
Originally posted by 26933062 at 2008-5-10 07:14 PM:@echo off
for /f "tokens=1* delims= " %%a in (a.txt) do (
if /i "%%a"=="delay" (echo %%a 30) else echo %%a %%b
)
pause
领教了,佩服!
有一点不懂,请指教:~~~%%b事先没有定义,它是怎样产生作用的呢?
|
|
2008-5-10 23:57 |
|
|
nipo
中级用户
  
积分 228
发帖 106
注册 2008-4-26
状态 离线
|
|
2008-5-11 00:32 |
|
|
moniuming
银牌会员
     永远的菜鸟
积分 1335
发帖 574
注册 2007-11-27 来自 广西
状态 离线
|
『第
7 楼』:
我更喜欢自己看帮助去解决问题的人,加分鼓励!!!
|
|
2008-5-11 00:55 |
|
|
nipo
中级用户
  
积分 228
发帖 106
注册 2008-4-26
状态 离线
|
『第
8 楼』:
谢谢鼓励!~~~本来是提了一个愚蠢的问题。呵呵^-^
|
|
2008-5-11 01:34 |
|
|
wfy150
初级用户
 
积分 82
发帖 34
注册 2008-4-29 来自 江西
状态 离线
|
『第
9 楼』:
原来也想这么干 忘了在给前面一个ECHO加重定向了.谢谢斑竹了
|
|
2008-5-11 01:45 |
|
|
youling126
初级用户
 
积分 87
发帖 42
注册 2008-5-7
状态 离线
|
『第
10 楼』:
完整的答案应该是这样吧
@echo off
cd.>b.txt
for /f "tokens=1* delims= " %%a in (a.txt) do (
if /i "%%a"=="delay" (echo %%a 30 >>b.txt) else echo %%a %%b>>b.txt
)
ren a.txt a_old.txt
ren b.txt a.txt
pause
|
|
2008-5-11 04:43 |
|