2014-07-26 4 views
0

라우터에 로그온하고 routerauto라는 출력을 가져 오는 스크립트가 있습니다. 텍스트 파일의 데이터를 사용하여 필요한 명령을 자동으로 채워서 많은 수의 라우터에서 필요한 정보를 가져오고 싶습니다.bash 스크립트의 여러 열 변수를 사용하여 라우터에서 출력을 가져옵니다.

궁극적으로 스크립트를 텍스트 파일의 각 줄로 이동하여 아래와 같이 열의 출력을 채워 넣으시기 바랍니다. 텍스트 파일은 탭을 구분 기호로 사용합니다.

routerauto VARIABLE1 "sh service id VARIABLE2 sap VARIABLE4 detail" 

데이터 예 :

hostnamei  serv-id cct    sap 
london-officei 123456 No987654321  8/1/4:100 

출력 예 : 여기

routerauto london-office "sh service id 123456 sap 8/1/4:100 detail" 
+1

실제 샘플과 출력을보다 잘 제공하십시오. – konsolebox

+0

질문의 텍스트에 따라 "예제 데이터"가 수정되었습니다. 이것이 맞는지 검토하십시오. –

답변

0

bash 유일한 해결책이다

#!/bin/bash 

while read hostnamei servid cct sap; do 
    echo routerauto $hostnamei \"sh service id $servid sap $sap detail\" 
done < <(tail -n +2 sample.data) 

는 샘플 파일을 소정의 제조 :

routerauto london-officei "sh service id 123456 sap 8/1/4:100 detail" 

다양한 데이터 필드에 공백이 허용되지 않는다는 것을 전제로하십시오.

관련 문제