中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-28 20:10
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » for命令中的 in('语句')中的‘语句’能否包含 | 管道符? 查看 706 回复 4
楼 主 for命令中的 in('语句')中的‘语句’能否包含 | 管道符? 发表于 2009-08-21 06:33 ·  中国 广东 东莞 电信
初级用户
积分 30
发帖 30
注册 2008-09-19 14:07
17年会员
UID 126048
性别 男
状态 离线
请问for命令中的 in('语句')中的‘语句’能否包含 | 管道符?
例如:
for %%i in ('type test.txt | findstr "hello"') do (
echo %%i
)
结果显示 “此时不应该有|”
因为有事需要进行多次筛选,如果能在for 的in语句里面操作那样会方便很多。
高手们谈谈多次筛选的操作技巧好吗?
2 发表于 2009-08-21 07:36 ·  中国 广东 东莞 电信
银牌会员
★★★
批处理编程迷
积分 1,916
发帖 752
注册 2008-12-28 04:30
17年会员
UID 135147
性别 男
来自 广西
状态 离线
加^号:
for %%i in ('type test.txt ^| findstr "hello"') do (echo %%i)
精简
=> 个人网志
3 发表于 2009-08-21 08:04 ·  中国 广东 东莞 电信
初级用户
积分 30
发帖 30
注册 2008-09-19 14:07
17年会员
UID 126048
性别 男
状态 离线
谢谢,搞掂了
4 发表于 2009-08-21 16:34 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
19年会员
UID 59080
状态 离线
用双引号把管道括起来也成。
for /f %%i in ('"type test.txt|findstr "hello""') do (echo %%i)
5 发表于 2009-08-21 23:22 ·  中国 广东 深圳 电信
新手上路
积分 2
发帖 2
注册 2009-08-11 10:14
16年会员
UID 150215
性别 男
状态 离线
哦,前天刚好也遇到这样的问题,正好解决,谢了
论坛跳转: