问题标签 [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 投票
5 回答
24439 浏览

c - 当文件流没有新数据时如何防止 fgets 阻塞

我有一个popen()执行tail -f sometextfile. 只要文件流中有数据,显然我可以通过fgets(). 现在,如果没有来自尾部的新数据,则fgets()挂起。我试过了ferror()feof()但无济于事。当文件流中没有新内容时,如何确保fgets()不尝试读取数据?

其中一个建议是select()。由于这适用于 Windows 平台,因此选择似乎不起作用,因为匿名管道似乎不适用于它(请参阅这篇文章)。

0 投票
7 回答
6472 浏览

c - 这个 _popen / select 示例有什么问题?

更新:我更新了代码和问题描述以反映我的更改。

我现在知道我正在非套接字上尝试套接字操作。或者我的 fd_set 无效,因为:

select返回 -1 并 WSAGetLastError()返回 10038。

但我似乎无法弄清楚它是什么。平台是 Windows。我还没有发布该WSAStartup部分。

现在的新结果当然是打印出返回码和最后一个错误。

0 投票
3 回答
4418 浏览

python - 所有 os.popen() 方法之间有什么区别?

我正在查看Python 文档,发现有 4-5 个不同版本的 popen(),例如 os.popen()、os.popen2() 等。

除了有些包含stderr而有些不包含这一事实之外,它们之间有什么区别以及您什么时候使用它们?文档并没有很好地解释它。

0 投票
3 回答
2605 浏览

python - Python:如何生成按键?

我正在打开一个进程(使用 os.popen() ),对于某些命令,它会检测某些按键(例如 ESC - 不是字符,键)。有没有办法将按键事件发送到进程?

0 投票
7 回答
186603 浏览

python - 在 python 脚本中启动 shell 命令,等待终止并返回脚本

我有一个 python 脚本,它必须为目录中的每个文件启动一个 shell 命令:

这适用于第一个文件,但在“myscript”命令结束后,执行停止并且不会返回到 python 脚本。

我能怎么做?我必须fork()以前calling os.execlp()吗?

0 投票
7 回答
46261 浏览

python - Python, Popen and select - waiting for a process to terminate or a timeout

I run a subprocess using:

This subprocess could either exit immediately with an error on stderr, or keep running. I want to detect either of these conditions - the latter by waiting for several seconds.

I tried this:

but it just returns:

on either condition. What can I do?

0 投票
2 回答
658 浏览

python - 防止 Python 子进程在 Windows 上传递 fds?

默认情况下,Python 的 subprocess 模块将所有打开的文件描述符传递给它产生的任何子进程。这意味着如果父进程正在侦听端口并被杀死,它无法重新启动并再次开始侦听(即使使用 SO_REUSEADDR),因为子进程仍然拥有该描述符。我无法控制子进程。

子进程 POpen 构造函数确实接受一个 close_fds 参数,它会关闭子进程上的描述符,就像我想要的那样。但是,仅在 Windows 上存在一个限制,如果 stdin/stdout 也被覆盖,则无法使用它,我需要这样做。

有谁知道在 Windows 上解决此问题的方法?

0 投票
2 回答
939 浏览

python - ZipFile 抱怨,有没有办法使用 zipfile 模块?

我正在尝试解压缩一些压缩后发送给我的彩信。问题是有时它有效,而另一些则无效。当它不起作用时,python zipfile 模块会抱怨并说它是一个错误的 zip 文件。但是使用 unix unzip 命令可以很好地解压缩 zipfile。

这就是我得到的

我正在使用 'w+' 并向其写入一个字符串,该字符串包含一个 zip 文件的 base64 解码字符串表示。

然后我喜欢这样:

这样我就得到了 zip 文件中所有图像的列表。但这并不总是有效,因为 zipfile 模块抱怨某些文件。

有没有办法做到这一点,而不使用 zipfile 模块?

我可以以某种方式使用 unzip 命令解压缩而不是 zipfile,然后使用同一件事从存档中检索所有图像吗?

0 投票
4 回答
5866 浏览

python - subprocess.Popen 错误

我正在以静默模式运行 msi 安装程序并在特定文件中缓存日志。以下是我需要执行的命令。

C:\Program Files\ My Installer\Setup.exe /s /v "/qn /lv %TEMP%\log_silent.log"

我用了:

执行该命令,但它无法识别该操作并给出有关选择错误选项的错误。我已经交叉验证并发现该命令只能以这种方式工作。

0 投票
2 回答
26297 浏览

python - 在运行时拦截子进程的标准输出

如果这是我的子流程:

这是控制和修改子进程输出的脚本:

为什么要等到进程完成运行readlinecommunicate有没有一种简单的方法来实时传递(和修改)子进程的标准输出?

我在 Windows XP 上。