2017-09-07 3 views
0

출력에서 ​​값을 가져 오기 위해 스크립트를 실행해야합니다. 다음은 변수를 설정 한 다음 scrip 내부에서 사용하십시오. 스크립트는 이것이다 :telnetlib - 출력에서 ​​특정 값으로부터 getiing을 정의합니다.

tn = telnetlib.Telnet(line) 

     tn.read_until("Username: ") 
     tn.write(user + "\n") 
     tn.read_until("Password: ") 
     tn.write(password + "\n") 
     tn.write("enable \n") 
     tn.write(password + "\n") 
     ## GET VOIP INTERFACE 
     tn.write("sh int desc | i VOIP \n") 

이 같은 genarate 것이다 출력 :

router01011 # 쉬 INT 내림차순 | 내가 Gi0/1.110까지 최대의 VoIP 지역 -

가 그럼 난 마지막 줄의 (Gi0/1.110 것,이 경우) 및 가변 문자열에 넣어 처음 10 개 문자를받을 필요가 VOIP. 내가 어떻게 할 수 있니?

감사합니다. 파이썬

답변

0

, 당신은 변수의 값을 절약 할 수 다음

result = your_var[:10] 

난 당신이

0

@Jorge이

예,이 부분이 실제로 작동이 도움말을 희망하지만 난 ' 마지막 출력 줄을 얻으려고 노력하지 않습니다. |

ra08ddd.br # 쉬 INT 내림차순 :

tn.read_until("Username: ") 
     tn.write(user + "\n") 
     tn.read_until("Password: ") 
     tn.write(password + "\n") 
     tn.write("enable \n") 
     tn.write(password + "\n") 
     ####################################### 
     ####################################### 
     ## GET WAN 
     tn.write("sh int desc | i LiETH\n") 
     tn.write("time\n") 
     out = tn.read_until("time") 
     print out 
     result = out[:10] 
     print result 

텔넷 콘솔의 실제 출력은 다음과 같이 될 것이다 :

나는 다음과 같은 코드를 사용하고 있습니다 내가 TULAR까지 최대 Gi0/0 동침 -이 예

내가 잘못된 명령을 강제하고있어에서 Gi0/0을 얻을 필요가 사실 그래서 "시간을 ra08ddd.br 번호

을 동침 "을 사용하고 = tn.read_until ("time ")을 사용하지만 작동하지 않습니다.

과 같은 다른 기능이 있습니까? read_until 출력의 마지막 줄을 가져 오려면?

관련 문제