-1
tp-link 스위치 (상태, 설명 및 속도 변경 ...)를 관리하기 위해 관리되지 않는 스크립트를 만들려고합니다. '나는 (ssh를 포함) 내 스위치에 연결하면리눅스에서 관리되지 않는 작업
enable
configure
interface gigabitEthernet 1/0/20
shutdown
내가 문제없이 모든 명령을 실행할 수 있지만 명령 줄 돈 사용 : 포트를 비활성화 : TP - 링크 예를 들어 ... 시스코 유사한 연결을 사용 t 작동 : 예를 들어
:
ssh x.x.x.x "sh interface configuration"
이 명령은 다음 내 포트의 상태를 표시하지만 아무것도 보여주지는 안된다. 사용자와 비밀번호는 정상입니다. SSH는 다음을 반환합니다.
Authenticated with partial success.
Connection to 192.168.20.26 closed by remote host.
이것을 실행하는 다른 옵션이 있습니까?
이 옵션을 expect 및 telnet과 함께 실행하면 결과가 정상이지만 ssh 연결로 기대를 실행해도 작동하지 않습니다.
#!/usr/bin/expect -f
spawn -noecho telnet 192.168.20.26
expect "User:"
send -- "admin\r"
expect "Password:"
send -- "mypass\r"
send -- "enable\r"
send -- "configure\r"
send -- "interface gigabitEthernet 1/0/20\r"
send -- "description hola\r"
send -- "exit\r"
send -- "exit\r"
send -- "exit\r"
send -- "exit\r"
send -- "exit\r"
interact
스크립트는 잘 작동하지만 원격 호스트에서이 스크립트를 실행하면 일을하지 :
스크립트가 기대 내.
감사합니다.
작동하지 않는 예상 코드를 제공하면 도움이 될 수 있습니다. 그렇지 않으면 질문이 너무 일반적입니다. – favoretti
안녕하세요 @ favoretti. 기대 스크립트로 내 게시물을 편집했습니다. 문제는 스크립트가 아닙니다. 이것은 잘 작동하지만 원격 호스트가 작동하지 않을 때 (로그인하지 않음) 기대를 실행하면. – user3368224
그래서'telnet'을'ssh'로 대체하면 아무 것도하지 않습니까? 'ssh -T' (PTY를 할당하지 않음)를 사용하여 해봤습니까? – favoretti