中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-11 23:10
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行
DOS批处理 & 脚本技术(批处理室) » 怎么用批处理将特定字符行的下一行输出?
可打印版本  1,243 / 12
第1楼 cjtielu 发表于 2010-08-10 20:33
新手上路 发帖 7 积分 7
怎么用批处理将特定字符行的下一行输出?
文件中某些行为特定字符,比如“下一行为输出结果”,我想将文件中这一行的下一行(也就是输出的结果)输出,这样的文件有很多个,怎么用批处理编程?
请教各位大侠,谢谢!
第2楼 cjtielu 发表于 2010-08-11 12:45
新手上路 发帖 7 积分 7
自己顶一下,期待解答。亟盼!
第3楼 freeants001 发表于 2010-08-11 17:39
中级用户 发帖 244 积分 330 来自 湖北
试试下面的代码:

第4楼 cjtielu 发表于 2010-08-11 19:17
新手上路 发帖 7 积分 7
确实强悍,太厉害了。正是我想要的。
还有个小小的要求:我想把这些结果输出到文件中,怎么办?
另外,有时候不是下一行,可能是下两行,就是说下面的第几行能是个用户可以输入的变量通用性就好了。
大侠确实太厉害了,十分感谢。
第5楼 cjtielu 发表于 2010-08-11 19:19
新手上路 发帖 7 积分 7
我改了几下,没能达到我想要的目的。就是简单的输出结果到文件都没改出来。
echo %%a|find "下一行为输出结果">nul&&set PNext=true||set pNext=false
主要是这行代码不明白。
第6楼 cjtielu 发表于 2010-08-11 19:25
新手上路 发帖 7 积分 7
实在有点菜,怎么把结果输出到文件我知道了。
但是第二个问题,就是不一定是下面一行,比如下面第三行或者第五行这个不知道怎么写?
还请大侠帮忙!
第7楼 freeants001 发表于 2010-08-11 20:02
中级用户 发帖 244 积分 330 来自 湖北
稍作修改下就可以了,要输入到文件可以在命令行下重定向


第8楼 freeants001 发表于 2010-08-11 20:36
中级用户 发帖 244 积分 330 来自 湖北
Originally posted by cjtielu at 2010-8-11 19:19:
我改了几下,没能达到我想要的目的。就是简单的输出结果到文件都没改出来。
echo %%a|find "下一行为输出结果">nul&&set PNext=true||set pNext=false
主要是这行代码不明白。


| 为管道符,反前面命令的输出交给后面的命令处理
&& 为逻辑与,前面的合令成功就执行成功就执行后面的命令
|| 为罗辑或,与&&相反

如何判断一个命令执行成功与失败,就是程序的返回值(比如:C语言程序就是main函数的return语句带回的值),可用echo.%errorlevel%查看,0为成功,其它为失败。

以上为我所知道的
第9楼 cjtielu 发表于 2010-08-12 12:44
新手上路 发帖 7 积分 7
谢谢讲解。我差不多明白了。
但是改后的代码好像运行不了?
第10楼 freeants001 发表于 2010-08-12 15:24
中级用户 发帖 244 积分 330 来自 湖北
理解错了,7楼为输出匹配行下的连续n行
下面的是输出匹配行下的第n行

第11楼 cjtielu 发表于 2010-08-12 20:15
新手上路 发帖 7 积分 7
还是无法运行啊,屏幕一闪而过
第12楼 wangyang331407 发表于 2010-08-14 17:41
初级用户 发帖 28 积分 28
本人比较菜哈。各位高手
谁能帮忙解释一下 flag=%~1 是什么意思啊。
第13楼 nanhezzb 发表于 2010-08-14 19:24
初级用户 发帖 32 积分 37
sed 一行代码完成,自己搜索百度sed的帮助
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023