모두 잘하고 있기를 바랍니다.스크립트 예상 - 특정 지점에서 로깅 시작 및 특정 지점에서 중지
저는 최근 몇 명의 네트워크 엔지니어가 사용할 수있는 작은 유틸리티를 함께 제공하기 시작했습니다. 함수는 회로 정보를 검색하여 좋은 형식으로 파싱하고 출력하는 것입니다. 물론,이 작업의 일부는 필요한 상자에 SSH 연결을 포함하고 원하는 출력을 생성하기 위해 명령을 실행하는 것과 관련이 있습니다.
여기에 제가 현재 가지고있는 스크립트가 있습니다. 그것은 잘 작동, 원하는 명령을 실행, 더 많은 회로를 표시하는 시스템을 묻는 몇 가지 공백을 보냅니다 그리고 종료하여 종료합니다. 이 모든 것은 상자의 호스트 이름과 동일한 이름의 파일에 기록됩니다. 큰.
그러나 생성 된 파일을 읽었을 때 내가 실행 한 명령과 연결시 불필요한 통계를 포함하여 많은 양의 데이터가 포함되어 있다는 것을 알았을 때 제 문제가 명백합니다. 난 단지 명령을 발행 할 때 로깅을 찾고, 이후에는이를 차단하기 위해 찾고있다. 내가 기대에 익숙하지 않기 때문에, 나는 정말로 어떤 지침을 주셔서 감사합니다.
PS. 내가 어리석은 짓을 한거면 죄송합니다. 나는 언어 자체에 매우 익숙하지 않다.
감사합니다.
set ip [lindex $argv 0]
set hostname [lindex $argv 1]
set timeout 10
set user ""
set password ""
# Spawning the ssh session
spawn ssh $ip -l $user
# Awaiting prompt for password
expect "[email protected]$ip's password:"
sleep 1;
# Awaiting prompt
send "$password\n"
sleep 2
log_file -noappend $hostname;
send "terminal length 0\n"
sleep 1
send "show int desc\n"
sleep 5
send "exit\n"
interact
exit
각'send' 명령 다음에'expect' 문을 추가하고 절대적으로 필요한 경우'sleep'을 사용하십시오. 말하자면, 그것은 모든 출력을 가지고 있습니다, 당신은 로그인 자체가 ssh 로그인의 시작부터 로깅을 의미합니까? – Dinesh