栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何从外部流程将数据写入现有流程的STDIN?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何从外部流程将数据写入现有流程的STDIN?

您的代码将无法正常工作。

/proc/pid/fd/0
/dev/pts/6
文件的链接。

$ echo’foobar’> / dev / pts / 6
$ echo’foobar’> / proc / pid / fd / 0

由于这两个命令均写入终端。此输入将转到终端,而不是进程。

如果stdin最初是管道,它将起作用。
例如,

test.py
是:

#!/usr/bin/pythonimport os, sysif __name__ == "__main__":    print("Try commands below")    print("$ echo 'foobar' > /proc/{0}/fd/0".format(os.getpid()))    while True:        print("read :: [" + sys.stdin.readline() + "]")        pass

运行为:

$ (while [ 1 ]; do sleep 1; done) | python test.py

现在从另一个终端写一些东西到

/proc/pid/fd/0
它会
test.py



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/403057.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号