Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python subprocess.communicate-读取未以换行符终止的行_Python_Subprocess - Fatal编程技术网

Python subprocess.communicate-读取未以换行符终止的行

Python subprocess.communicate-读取未以换行符终止的行,python,subprocess,Python,Subprocess,我正在编写一个Python程序,它使用子流程模块通过ssh与设备的管理接口通信。有时,设备会提示输入一行未以换行符终止的行。如何让subprocess.communicate()将这些行返回给我?有没有办法一个字一个字地读无缓冲的?生成的I/O量非常小,因此我不担心这里的高开销。使用bufsize=0打开进程将关闭输出缓冲,因为我认为您仍然需要传递一些自定义的类似文件的对象(如StringIO)进入Popen作为stdout或stderr,您必须从中读取communicate()等待进程终止,然

我正在编写一个Python程序,它使用子流程模块通过ssh与设备的管理接口通信。有时,设备会提示输入一行未以换行符终止的行。如何让subprocess.communicate()将这些行返回给我?有没有办法一个字一个字地读无缓冲的?生成的I/O量非常小,因此我不担心这里的高开销。

使用
bufsize=0打开进程将关闭输出缓冲,因为我认为您仍然需要传递一些自定义的类似文件的对象(如
StringIO
)进入
Popen
作为
stdout
stderr
,您必须从中读取
communicate()
等待进程终止,然后返回任何命令输出。

一个示例将帮助您获得更多答案该库可能会为您省去一些麻烦。