2014-12-07 3 views
1

안녕하세요, 저는 ssh 연결을 만들고 일부 데이터를 분석하려고합니다. 이 부분출력을 파이썬에서 라인 단위로 읽으십시오.

buf=StringIO.StringIO(output) 
for lines in buf.read() 
    print lines 

라인으로이 코드 인쇄 문자 라인까지

ssh=ssh_pre.invoke_shell() 
ssh.send("display ospf peer brief \n") 
output = ssh.recv(10000) 

모든 작업 : 임 여기 paramiko를 사용하여 내 코드의 일부입니다. 나는 선을 인쇄하고 싶다. 나는 어떻게해야합니까?

+0

모든 버퍼를 한 번에 쓰고 싶습니다. 그렇지 않니? –

+0

내 주요 목적은 무엇입니까 서버에서 반환 및 특정 라인을 찾을 수 있습니다. 예를 들어 줄에는 '사과'가 포함됩니다. 내가 한 줄씩 쓴다면 나는 내가 원하는 것을 할 수 있다고 생각한다. – zeto

답변

1

문제는 StringIO.read()은 줄이 아닌 일련의 문자열을 반환합니다. 이 일을보십시오 :

buf=StringIO.StringIO(output) 
for lines in buf.read().split("\n"): 
    print lines 

이 오히려 문자열의 각 문자를 통해 반복보다, 줄 바꿈하여 버퍼를 분할하고 각 라인의 목록을 작성합니다.

관련 문제