问题标签 [popen]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
555 浏览

linux - Solaris 有 popen 的问题吗?

请看一下这段代码:

该程序将打印“Hello World!”。它在 Linux 平台上工作,但在Solaris上失败,它抱怨:make: *** fopen (temporary file): No such file or directory. Stop..

我怎么解决这个问题?

0 投票
1 回答
690 浏览

svn - 编写 Apache 模块时,popen(svn) 失败,终止状态为 256

我想写一个在线 SVN 存储库浏览器。我决定将它实现为一个 Apache 模块,围绕命令行客户端(暂时)。当我开始时,我有以下代码:

此命令失败,终止状态为 256。这对应于什么错误?我一直找不到这个文档。

成功打印出诸如“cat somefile”之类的简单调用。事实上,调用“svn info path-to-a-working-copy”是成功的。但是,为了灵活性,我想处理可能的远程存储库。

你有什么建议吗?

编辑:退出代码应在 0-255 范围内。这一个显然没有。这告诉我什么?

Edit2:作为一个测试用例,我创建了一个 bash 脚本,它将运行所需的 SVN 命令,然后打印它的返回值。未遇到预期的 SVN 行为,脚本打印“1”作为 SVN 的退出值。这在浏览器端可见。

0 投票
1 回答
565 浏览

python - 为什么这段代码在 Python3.1 中的行为与在 Python2.6 中的行为不同?

我对编程很陌生,所以如果我的问题太愚蠢,我提前道歉。

在 Python 2.6 中执行此代码会打印字母 a、b、c、d ,每行输出会在一秒钟后出现。这是预期的行为。但在 Python 3.1 中,执行在 line 处被阻止output=p.stdout.readline()。如何为 Python 3.1 更正此问题?

0 投票
3 回答
112058 浏览

python - 是否可以在子进程中运行函数而无需线程或编写单独的文件/脚本。

我只找到了有关使用单独脚本打开子进程的文档。有谁知道如何传递函数对象,甚至是传递函数代码的简单方法?

0 投票
3 回答
1268 浏览

python - 使用 subprocess.Popen 恢复进程?

我有一个 python 程序,用于subprocess.Popen启动另一个进程(python 进程或其他),在启动它之后,我将孩子的 PID 保存到一个文件中。让我们假设父进程突然死亡(由于异常或其他原因)。有没有办法再次访问返回的对象Popen

我的意思是,基本思想是首先读取文件,如果它存在并且上面写有 PID,然后以某种方式访问​​该进程,以便知道返回码或其他什么。如果没有 PID,则使用Popen.

非常感谢!!

0 投票
2 回答
3715 浏览

python - 子进程 popen + curl + 二进制数据

以下语句按预期工作:

但是当尝试它时subprocess.popen

Curl 似乎挂断了(登录到无限循环),就像输入文件没有传递给它一样(这是 localhost:30 正常运行所必需的)......

有任何想法吗?

0 投票
4 回答
41309 浏览

python - subprocess.Popen 需要什么权限?

以下代码:

在 OS X 中调用最后一行即 'conversion =' 时导致此错误。

我已经尝试过chmod 777 /Users/jondoe/development/mdb-export- 还需要什么?

0 投票
2 回答
3530 浏览

c - Using popen() to invoke a shell command?

When running the following code through xcode I get inconsistent behavior. Sometimes it prints the git version correctly, other times it doesn't print anything. The return code from the shell command is always 0 though. Any ideas on why this might be? What am I doing wrong?

0 投票
8 回答
43226 浏览

python - 实时 subprocess.Popen 通过 stdout 和 PIPE

我试图stdout从电话中subprocess.Popen接听电话,尽管我很容易通过以下方式实现这一目标:

我想stdout“实时”抓取。使用上述方法,PIPE 正在等待抓取所有stdout内容,然后返回。

因此,出于记录目的,这不符合我的要求(例如“查看”发生的情况)。

有没有办法在运行时逐行获取stdout?或者这是一个限制subprocess(必须等到PIPE关闭)。

编辑 如果我切换readlines()readline()我只会得到stdout(不理想)的最后一行:

0 投票
4 回答
12922 浏览

python - 使用 Popen.stdin 执行多个命令

我想使用管道在从 python 脚本启动的独立应用程序中执行多个命令。我可以可靠地将命令传递给程序的标准输入的唯一方法是使用 Popen.communicate 但它会在命令执行后关闭程序。如果我使用 Popen.stdin.write 比命令只执行 5 次左右的 1 次,它就不能可靠地工作。我究竟做错了什么?

详细说明一下:

我有一个应用程序,它监听标准输入的命令并逐行执行它们。我希望能够运行应用程序并将各种命令传递给它,基于用户与 GUI 的交互。这是一个简单的测试示例:

我希望看到这两个命令的结果,但我没有得到任何回应。(如果我多次执行 Popen.write 行之一,它偶尔会起作用。)

如果我执行:

它运行良好,但应用程序终止。