在python中逐行读取输出
嗨,我想建立ssh连接并解析一些数据。我正在使用paramiko,下面是我代码的一部分:在python中逐行读取输出,python,ssh,paramiko,line-by-line,Python,Ssh,Paramiko,Line By Line,嗨,我想建立ssh连接并解析一些数据。我正在使用paramiko,下面是我代码的一部分: ssh=ssh_pre.invoke_shell() ssh.send("display ospf peer brief \n") output = ssh.recv(10000) 在这部分之前一切都正常 buf=StringIO.StringIO(output) for lines in buf.read() print lines 此代码逐行打印字符。我想打印行。我该怎么办?问题是Strin
ssh=ssh_pre.invoke_shell()
ssh.send("display ospf peer brief \n")
output = ssh.recv(10000)
在这部分之前一切都正常
buf=StringIO.StringIO(output)
for lines in buf.read()
print lines
此代码逐行打印字符。我想打印行。我该怎么办?问题是
StringIO.read()
返回字符串、字符序列,而不是行。尝试这样做:
buf=StringIO.StringIO(output)
for lines in buf.read().split("\n"):
print lines
这将按换行符拆分缓冲区,并创建每行的列表,而不是在字符串中的每个字符上循环。您希望一次写入所有缓冲区。不是吗?我的主要目的是阅读服务器返回的内容并找到具体的行。例如,该行包括“apple”。如果我一行一行地写,我相信我能做我想做的事