pipe相关内容

块 - 将输入发送到 python 子进程管道

我正在使用 python 测试子流程管道.我知道我可以直接在 python 中执行下面的程序,但这不是重点.我只是想测试一下管道,所以我知道如何使用它. 我的系统是 Linux Ubuntu 9.04,默认 python 2.6. 我从这个文档示例开始. from subprocess import Popen, PIPEp1 = Popen(["grep", "-v", "not" ..
发布时间:2022-01-18 15:51:09 Python

Python subprocess 模块,我如何为管道命令系列中的第一个提供输入?

我正在尝试使用 Python 的 subprocess 模块.我需要的是将输入发送到第一个进程,其输出成为第二个进程的输入.情况与此处文档中给出的示例基本相同:http://docs.python.org/library/subprocess.html#replacing-shell管道除了我需要提供输入第一个命令.这是复制的示例: p1 = Popen(["dmesg"], stdout=PI ..
发布时间:2022-01-18 15:47:40 Python

用于 Windows 的 python os.mkfifo()

短版(如果你能回答短版它对我有用,其余的主要是为了其他有类似任务的人的利益): 在 Windows 的 python 中,我想创建 2 个文件对象,附加到同一个文件(它不必是硬盘驱动器上的实际文件),一个用于读取,一个用于写入,这样如果读取端尝试读取它永远不会得到 EOF(它只会阻塞直到写入某些内容).我认为在 linux os.mkfifo() 中可以完成这项工作,但在 Windows 中 ..
发布时间:2022-01-18 15:38:36 Python

在不破坏管道的情况下与进程多次通信?

这不是我第一次遇到这个问题,而且真的很困扰我.每当我使用 Python subprocess 模块打开管道时,我只能与它 communicate 一次,如文档所述:从 stdout 和 stderr 读取数据,直到结束-of-file 到达 proc = sub.Popen("psql -h darwin -d main_db".split(),stdin=sub.PIPE,stdout=sub ..
发布时间:2022-01-18 15:27:21 Python

用管道链接几个 Popen 命令

我知道如何使用 cmd = subprocess.Popen 然后 subprocess.communicate 来运行命令.大多数时候,我使用一个用 shlex.split 标记的字符串作为 Popen 的 'argv' 参数.以“ls -l"为例: 导入子流程进口shlex打印 subprocess.Popen(shlex.split(r'ls -l'),stdin = subprocess ..
发布时间:2022-01-18 15:22:19 Python

子进程 readline 挂起等待 EOF

我有一个简单的 c++ 程序,我正在尝试通过 python 脚本执行该程序.(我对编写脚本非常陌生)并且我无法通过管道读取输出.从我所看到的情况来看,如果没有 EOF,readline() 似乎将无法工作,但我希望能够在程序中间读取并让脚本响应输出的内容.而不是读取输出,它只是挂起python脚本: #!/usr/bin/env python导入子流程def callRandomNumber() ..
发布时间:2022-01-18 15:20:18 Python

检索 subprocess.call() 的输出

如何获得使用 subprocess.call() 运行的进程的输出? 将 StringIO.StringIO 对象传递给 stdout 会出现以下错误: Traceback(最近一次调用最后一次): 中的文件“"第 1 行文件“/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/sub ..
发布时间:2022-01-18 15:14:13 Python

如何使用带有管道的`subprocess`命令

我想使用 subprocess.check_output() 和 ps -A |grep 'process_name'.我尝试了各种解决方案,但到目前为止没有任何效果.有人可以指导我怎么做吗? 解决方案 要将管道与 subprocess 模块一起使用,您必须传递 shell=True.p> 但是,出于各种原因,这并不是真正可取的,尤其是安全性.相反,分别创建 ps 和 grep 进程,并 ..
发布时间:2022-01-18 15:13:22 服务器开发

不能在一段时间内使用变量并在bash中使用管道

我有这样的代码 var="之前"回声“$someString"|sed '$someRegex' |而读线做如果 [ $条件 ];然后var="之后"echo "$var" #第一次回显菲完毕echo "$var" #第二次回显 这里第一个回显打印“之后",但第二个是“之前".如何在“之后"进行第二次回声打印.我认为这是因为管道购买我不知道如何弄清楚. 感谢您的任何解决方案... ..
发布时间:2022-01-15 23:53:10 服务器开发

在 Exim 中使用管道进行邮件路由

我正在寻找将电子邮件发送到多个目的地,即一个发送到用户指定的电子邮件地址,另一个发送到 php 脚本.在网上冲浪时,我得出结论,我必须在路由器中使用管道并传输我的邮件代理的配置,即我的例子中的 Exim.我尝试但未能在我的 Exim 配置中嵌入管道传输.服务器导致管道传输失败.需要帮助来解决此问题.我将 exim.cnf 文件修改为: ############ 路由器系统别名:司机=接受域 = ..
发布时间:2022-01-13 21:55:49 PHP

Python的Multiprocessing之进程通信

我了解了 Python 多进程的 Pipes/Queues/Shared ctypes Objects/Managers,我想将它们与 Linux 的匿名管道、命名管道、共享内存、套接字等进行比较.我现在有以下问题 Python 多处理的管道和队列模块是基于匿名管道的.是否提供命名管道? Python multiprocessing.sharedctypes 是否支持独立进程沟通?我认 ..
发布时间:2022-01-12 13:12:02 Python

在进程之间进行通信时,队列比管道有什么优势?

使用 2 管道上的">队列a> 在进程之间进行通信? 我打算使用 multiprocessing python 模块. 解决方案 最大的胜利是队列是进程和线程安全的.管道不是:如果两个不同的进程试图读取或写入管道的同一端,就会发生不好的事情.队列也比管道处于更高的抽象级别,这在您的特定情况下可能是也可能不是优势. ..
发布时间:2022-01-12 13:09:57 服务器开发

使用 Python 多处理管理器 (BaseManager/SyncManager) 与远程机器共享队列时管道损坏

上个月,当我们尝试使用 Python 2.6.x 多处理包在多台不同 (linux) 计算机之间共享队列时,我们遇到了一个持续存在的问题.我也直接向 Jesse Noller 提出了这个问题,因为我们还没有在 StackOverflow、Python 文档、源代码或其他在线网站上找到任何说明该问题的内容. 我们的工程师团队无法解决这个问题,我们向 python 用户组中的很多人提出了这个问题 ..
发布时间:2022-01-12 13:05:59 Python

多处理 - 管道与队列

Python 的多处理包中的队列和管道的根本区别是什么?p> 在什么情况下应该选择一个而不是另一个?什么时候使用 Pipe() 比较有利?什么时候使用 Queue() 比较有利? 解决方案 一个 Pipe() 只能有两个端点. 一个 Queue() 可以有多个生产者和消费者. 何时使用它们 如果您需要两个以上的点进行通信,请使用 Queue(). 如果您需要绝 ..
发布时间:2022-01-12 12:13:01 Python

fork()、pipe() 和 exec() 进程创建和通信

我必须编写使用 pipe() 创建进程的程序. 我的第一个任务是编写一个父进程,它使用 fork() 函数生成四个子进程. fork() 成功后,将子进程替换为另一个进程 rover1、rover2、rover3 和 rover4,尽管它们的代码相同. 进程的功能如下. 每个子进程最初都有自己的编号.它从父母那里收到一个新号码.使用以下公式,它会创建自己的新号码,如下所示并 ..
发布时间:2022-01-11 23:12:58 其他开发