中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-06 19:22
48,039 主题排行 / 350,124 发帖 / 今日 0 篇 / 48,252 会员排行
DOS批处理 & 脚本技术(批处理室) » 请教关于如何取DIR列出文件名中第N行数据?
可打印版本  794 / 7
第1楼 sunmoonsky 发表于 2007-12-07 16:29
新手上路 发帖 4 积分 10
请教关于如何取DIR列出文件名中第N行数据?
我使用
for /f "delims=" %%i in ('dir/a:a /b /o:-d *.log') do echo %%i
取出当前目录中的文件名,我现在如果想要取出第2行中的文件名应该如何处理?

请各位指教,谢谢!
第2楼 huahua0919 发表于 2007-12-07 16:43
银牌会员 发帖 780 积分 1,608
echo j%%
第3楼 sunmoonsky 发表于 2007-12-07 16:45
新手上路 发帖 4 积分 10
Originally posted by huahua0919 at 2007-12-7 04:43 PM:
echo j%%


请指教,没明白什么意思
第4楼 huahua0919 发表于 2007-12-07 16:45
银牌会员 发帖 780 积分 1,608
@echo off
set a=0
for /f "delims=" %%i in ('dir/a:a /b /o:-d *.log') do (
set/a a+=1
if equ 2 echo %%i
pause
)
第5楼 huahua0919 发表于 2007-12-07 16:46
银牌会员 发帖 780 积分 1,608
if !a! equ 2 echo %%i
开变量延迟
第6楼 sunmoonsky 发表于 2007-12-07 16:51
新手上路 发帖 4 积分 10
谢谢楼上的,我这里运行后,没有输出文件名。用下面的代码想看一下a的值,发现值为0.

@echo off
set a=0
for /f "delims=" %%i in ('dir/a:a /b /o:-d *.log') do (
set/a a+=1
echo %a%
if !a! equ 2 echo %%i echo %a%
)
第7楼 huahua0919 发表于 2007-12-07 16:59
银牌会员 发帖 780 积分 1,608
我说了开变量延迟啊,
@echo off
for /f "skip=1 tokens=* delims=" %%i in ('dir/a:a /b /o:-d *.log') do echo %%i&pause

还有查看你的代码
'dir/a:a /b /o:-d *.log'
第8楼 sunmoonsky 发表于 2007-12-07 17:07
新手上路 发帖 4 积分 10
谢谢,不好意思,新手,不懂啥叫变量延迟,还是后来百度了一下才明白,谢谢。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023