中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » 函数如何支持管道-DOS与高级语言的交互问题
作者:
标题: 函数如何支持管道-DOS与高级语言的交互问题 上一主题 | 下一主题
sinbao
初级用户





积分 184
发帖 73
注册 2007-5-24
状态 离线
『楼 主』:  函数如何支持管道-DOS与高级语言的交互问题

我们知道
dir /b | findstr "\.txt$"
是打印当前目录的.txt文件

我也想写一个程序my_find.exe(用高级语言,比如c,c++,java,c#)
我也想这样用
dir /b | my_find "\.txt$"
来实现跟上面findstr一样的功能.

可以吗?

[ Last edited by sinbao on 2007-10-28 at 07:54 PM ]

2007-10-27 21:41
查看资料  发短消息 网志   编辑帖子  回复  引用回复
sinbao
初级用户





积分 184
发帖 73
注册 2007-5-24
状态 离线
『第 2 楼』:  

有人吗?

2007-10-28 10:37
查看资料  发短消息 网志   编辑帖子  回复  引用回复
jack123147
初级用户





积分 52
发帖 20
注册 2007-10-25
状态 离线
『第 3 楼』:  

set my_find="c:\windows\findstr.exe"
echo .b | my_find ".\txt$"

2007-10-28 12:52
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sinbao
初级用户





积分 184
发帖 73
注册 2007-5-24
状态 离线
『第 4 楼』:  

my_find.exe是我自己用c#或其他高级语言写的程序,不是findstr.exe...

问题是管道把东西传给我的程序my_find.exe之后,我的程序从哪里把这个东西拿到???

2007-10-28 19:53
查看资料  发短消息 网志   编辑帖子  回复  引用回复
jojand
初级用户





积分 117
发帖 57
注册 2007-10-23
状态 离线
『第 5 楼』:  

从管道输入就是从标准的输入设备输入
往管道输出就是往标准的输出设备输出

c#不会用,用basic试验:
do
    do:y$=inkey$:loop until y$<>""
    print "---";y$
loop
以上代码编译成1.exe
再建立一个测试文件:
copy con 2.txt
Test!
^Z

执行:
type 2.txt | 1

屏幕输出:
---T
---e
---s
---t
---!

OK,试验成功。

2007-10-31 11:47
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sinbao
初级用户





积分 184
发帖 73
注册 2007-5-24
状态 离线
『第 6 楼』:  

jojand, I got it, thanks!

2007-11-3 22:02
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: