|
redtek
金牌会员
     
积分 2902
发帖 1147
注册 2006-9-21
状态 离线
|
『第
16 楼』:
你要的延时变量所达到的效果:
第二种方法:
@echo %dbg% off
setlocal enabledelayedexpansion
set b=0
for /l %%i in (0,1,4) do (
echo !b!
call set /a b+=1
) 输出如下:
C:\TEMP\k>b.bat
0
1
2
3
4
|

Redtek,一个永远在网上流浪的人……
_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._ |
|
2006-11-7 03:36 |
|
|
onlykier
初级用户
 
积分 50
发帖 23
注册 2006-11-3
状态 离线
|
『第
17 楼』:
楼上的兄弟,你完全是在偷巧阿
这样,我要求
@echo %dbg% off
for /L %%i in (0,1,4) do (
echo %%i
)
echo %%i 中不能用%%i来显示,要用另外一个变量显示,该变量和%%i一点关系都不能有
|
|
2006-11-7 03:44 |
|
|
redtek
金牌会员
     
积分 2902
发帖 1147
注册 2006-9-21
状态 离线
|
『第
18 楼』:
onlykier兄,看了你8楼的代码例子,并运行了很多次并调试……
不过,你上面要处理的问题并没有跟上你的思路:)
你想了如何去解决一个问题,可是偏偏出现错误的地方几乎全都是因为一些基础的知识点所影响着:)
而onlykier兄的学习速度太快了,但最后还要回到那些基础的变量赋值、SET、延时变量、For的结构、特殊符号的运行和转义……
所以,建议onlykier把下面链接中所提到的知识点重新、从头到尾的一行一行代码全都键入一遍~:)
然后回过头来再看,相信onlykier兄会超越现在……
而这一切过程很可能仅仅几天甚至一、两天就够了,
可是这一两天的从头到尾做一遍这些知识点,相信onlykier永远都不再会问题了,
而是开始走入了知道如何处理一些不知道的问题并可以极快的找到办法:)
[简单索引]关于SET变量、延时变量、各种符号的用法……
http://www.cn-dos.net/forum/viewthread.php?tid=24549&fpage=1
[ Last edited by redtek on 2006-11-7 at 03:57 AM ]
|

Redtek,一个永远在网上流浪的人……
_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._ |
|
2006-11-7 03:47 |
|
|
onlykier
初级用户
 
积分 50
发帖 23
注册 2006-11-3
状态 离线
|
『第
19 楼』:
楼上的兄弟,你杀了我吧
我再来个例子
我只想显示第一行,下面的代码确都显示,why?
@echo off
dir d: /b>>d:\1.txt
set c=0
echo 1,%c%
for /f %%i in (d:\1.txt) do (
if %c% equ 0 (set c=1
echo 2,%c%
echo %%i)
)
[ Last edited by onlykier on 2006-11-6 at 03:12 PM ]
|
|
2006-11-7 04:02 |
|
|
redtek
金牌会员
     
积分 2902
发帖 1147
注册 2006-9-21
状态 离线
|
『第
20 楼』:
楼上的兄弟,我不杀你,还是你让我自杀吧~:)
你的 for (你这里不加 /f 参数能读出文件内容来吗?) %%i in (d:\1.txt) do (
|

Redtek,一个永远在网上流浪的人……
_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._ |
|
2006-11-7 04:10 |
|
|
onlykier
初级用户
 
积分 50
发帖 23
注册 2006-11-3
状态 离线
|
『第
21 楼』:
我修改了,楼上的兄弟,你qq多少,我等答案等的的心痛啊
|
|
2006-11-7 04:12 |
|
|
onlykier
初级用户
 
积分 50
发帖 23
注册 2006-11-3
状态 离线
|
『第
22 楼』:
set c=1
echo 2,%c%
为什么输出的 %c%还是0阿??
|
|
2006-11-7 04:14 |
|
|
onlykier
初级用户
 
积分 50
发帖 23
注册 2006-11-3
状态 离线
|
『第
23 楼』:
论坛翻页,没看到redtek 的第二种方法 ^^!
set b=0
for /l %%i in (0,1,4) do (
echo !b!
call set /a b+=1
再请教下,这里问什么要有call呢?
|
|
2006-11-7 04:28 |
|
|
redtek
金牌会员
     
积分 2902
发帖 1147
注册 2006-9-21
状态 离线
|
『第
24 楼』:
@echo %dbg% off
:: 延时变量
setlocal enabledelayedexpansion
dir d: /b>>d:\1.txt
set c=0
echo 1,%c%
:: /f 参数
:: "delims=" 可以读取含空格的字符串……
for /f "delims=" %%i in (d:\1.txt) do (
if !c! equ 0 (
set c=1
echo 2,!c!
echo %%i
)
)
建议这样按缩进书写代码:) [ Last edited by redtek on 2006-11-7 at 04:36 AM ]
|

Redtek,一个永远在网上流浪的人……
_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._ |
|
2006-11-7 04:30 |
|
|
lxmxn
版主
       
积分 11386
发帖 4938
注册 2006-7-23
状态 离线
|
『第
25 楼』:
@echo off
dir c:\ /b>>c:\1.txt
set /p s=<c:\1.txt
echo %s%
pause
|
|
2006-11-7 04:30 |
|
|
redtek
金牌会员
     
积分 2902
发帖 1147
注册 2006-9-21
状态 离线
|
『第
26 楼』:
Quote: | Originally posted by onlykier at 2006-11-7 04:28:
论坛翻页,没看到redtek 的第二种方法 ^^!
set b=0
for /l %%i in (0,1,4) do (
echo !b!
call set /a b+=1
再请教下,这里问什么要有call呢? |
|
那个 call 删了吧,那是做别的实验留下的COPY上来时忘了删了~:)
|

Redtek,一个永远在网上流浪的人……
_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._ |
|
2006-11-7 04:31 |
|
|
redtek
金牌会员
     
积分 2902
发帖 1147
注册 2006-9-21
状态 离线
|
『第
27 楼』:
lxmxn兄代码非常简捷,欣赏~:)
|

Redtek,一个永远在网上流浪的人……
_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._ |
|
2006-11-7 04:32 |
|
|
onlykier
初级用户
 
积分 50
发帖 23
注册 2006-11-3
状态 离线
|
『第
28 楼』:
@echo off
dir c:\ /b>>c:\1.txt
set /p s=<c:\1.txt
echo %s%
pause
这段代码为什么只显示第一行?
我觉的应该显示好多阿,因为c:\1.txt内容给了s了阿
|
|
2006-11-7 04:48 |
|
|