gpt4 book ai didi

Python子进程将输出返回到列表中

转载 作者:行者123 更新时间:2023-12-05 02:16:40 24 4
gpt4 key购买 nike

我正在尝试使用从以下命令返回的每个 IP 地址创建一个列表。我不完全确定如何实现这一目标。似乎子进程等于无。

    import subprocess


ips = list()
def bash_command(cmd):
subprocess.Popen(['/bin/bash', '-c', cmd])

ips = bash_command("netstat -tuna tcp | grep 9876 | grep -v 0.0.0.0 | awk '{ print $5}' | cut -d':' -f1")

print(ips)

最佳答案

为了读取输出,您需要将子进程的 stdout 定向到管道。之后,您可以使用 readlines 函数逐行读取输出(或 readline 一次读取一行),或 read 函数将整个输出读取为单个字节数组。

def bash_command(cmd):
sp = subprocess.Popen(['/bin/bash', '-c', cmd], stdout=subprocess.PIPE)
return sp.stdout.readlines()

关于Python子进程将输出返回到列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49132728/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com