텔넷을 통해 서버에 연결하고 일부 권한을 부여하는 expect 스크립트를 만들고 싶습니다. 스크립트 매개 변수 사용에 문제가 있습니다. 사람을 기반으로 나는이 일 것으로 예상 : 예상 인수 처리
#!/usr/bin/expect -f
spawn telnet $argv1 5038
...
불행히도 내가 다시
can't read "argv1": no such variable
얻을. 어떻게이 일을 할 수 있습니까?
텔넷을 통해 서버에 연결하고 일부 권한을 부여하는 expect 스크립트를 만들고 싶습니다. 스크립트 매개 변수 사용에 문제가 있습니다. 사람을 기반으로 나는이 일 것으로 예상 : 예상 인수 처리
#!/usr/bin/expect -f
spawn telnet $argv1 5038
...
불행히도 내가 다시
can't read "argv1": no such variable
얻을. 어떻게이 일을 할 수 있습니까?
$argv
명령 줄 매개 변수를 들고 Tcl의 목록이며, 0부터 시작, 색인 당신이 원하는 :
[lindex $argv 0]
당신은 2 분을 이겼습니다 :) 고마워요. 사람에게 $ argv0을 언급하는 예제가 있는데, 그것은 나를 혼란스럽게 만든다. – viraptor
그래서 나는 (이 예제로 혼란 스러웠다) –
proc에서 $ argv0을 사용하려고 시도했을 때 유사한 오류 can't read "argv0": no such variable
가 발생했습니다. 해결책은 $::argv0
을 사용하여 전역 네임 스페이스에서 명시 적으로 액세스하는 것입니다.
어쩌면 serverfault.com – Graviton
에서 물어보십시오 왜? 이것은 expect/tcl 프로그래밍에 관한 질문입니다. – viraptor