|
scriptor
银牌会员
积分 1187
发帖 555
注册 2006-12-21
状态 离线
|
『楼 主』:
for循环嵌套中skip的参数问题
我的意思是:
依次忽略前1,2,....,6行,将文件的内容输出
文件a.txt:
abc
123
name
haha
ddd
sdw
erw
332,l.
a asdfe
我要的结果是
skip=1时, 只输出123
skip=2时, 只输出name
......
skip=6时, 只输出erw
脚本如下:
for /l %%a in (1,1,6) do (
for /f "delims= skip=%%a" %%b in (a.txt) do (
echo %%b
)
)
问题是,这个脚本执行不了
提示为:
此时不能有%a"
我想了很久
搜索查看了论坛的帖子
还是无解
那位能解释一下
for循环嵌套中的skip=后面能不能使用变量
怎么解决?
|
|
2007-9-13 15:56 |
|
|
scriptor
银牌会员
积分 1187
发帖 555
注册 2006-12-21
状态 离线
|
『第
2 楼』:
即使加了
setlocal enabledelayedexpansion
也没有用
|
|
2007-9-13 15:57 |
|
|
ThinKing
中级用户
积分 471
发帖 207
注册 2007-5-3
状态 离线
|
『第
3 楼』:
try this:
@echo off
for /l %%a in (1,1,6) do call :skip_ %%a
pause&exit/b
:skip_
for /f "delims= skip=%1" %%b in (a.txt) do (
echo %%b && goto :eof
)
|
|
2007-9-13 16:04 |
|
|
scriptor
银牌会员
积分 1187
发帖 555
注册 2006-12-21
状态 离线
|
『第
4 楼』:
Quote: | Originally posted by ThinKing at 2007-9-13 16:04:
try this:
[code]
@echo off
for /l %%a in (1,1,6) do call :skip_ %%a
pause&exit/b
:skip_
for /f "delims= skip=%1" %%b in (a.txt) do (
echo %%b && goto :eof
... |
|
好了
这个很好啊
其实我也用过这个技术
不知道哪里错了
所以
我又回到原始的想法
只在for嵌套中用
呵呵,不过还是我错了
谢谢了
代码没有错误!
我得对照一下我的为什么错了
呵呵.....
|
|
2007-9-13 16:21 |
|
|
scriptor
银牌会员
积分 1187
发帖 555
注册 2006-12-21
状态 离线
|
『第
5 楼』:
To: Thinking
给你加分吧!
呵呵....
|
|
2007-9-13 16:22 |
|
|
scriptor
银牌会员
积分 1187
发帖 555
注册 2006-12-21
状态 离线
|
『第
6 楼』:
再补充下:
最好是能在for的嵌套中解决这个问题
call 和 goto 跳来跳去的
就涉及到代码段位置的安排了
|
|
2007-9-13 16:31 |
|
|
ThinKing
中级用户
积分 471
发帖 207
注册 2007-5-3
状态 离线
|
『第
7 楼』:
换个思路也可达到目的:
@echo off
for /l %%a in (1,1,6) do (
for /f "delims=" %%b in ('more +%%a a.txt') do (
if not defined a echo %%b&&set a=thinking
)
set a=
)
pause
|
|
2007-9-13 19:43 |
|
|
scriptor
银牌会员
积分 1187
发帖 555
注册 2006-12-21
状态 离线
|
『第
8 楼』:
Quote: | Originally posted by ThinKing at 2007-9-13 19:43:
换个思路也可达到目的:
[code]@echo off
for /l %%a in (1,1,6) do (
for /f "delims=" %%b in ('more +%%a a.txt') do (
if not defined a echo %%b&&set a=thin ... |
|
这个也可以
只是时间上要比你之前那个慢多了
同样一个文件
这个所花费的时间是之前那一个的40倍
哈哈...
不过技术上来讲
这个要多一点
|
|
2007-9-13 20:34 |
|
|
scriptor
银牌会员
积分 1187
发帖 555
注册 2006-12-21
状态 离线
|
|
2007-9-13 20:35 |
|