expect에 대한 설명은 expect를 이용한 자동화(1) - ssh 를 참조하기 바란다.
여기서는 expect를 이용해서 원격 장비의 passwd를 자동으로 변경하는 쉘을 만들어 보겠다. 서버가 여러 대일 경우, 동시에 passwd변경 시 유용하게 사용할 수 있다.
파일명 |
passwd.exp |
파일 내용 |
#!/usr/bin/expect proc usage {} { set argc [llength $argv] if { $argc != 4 } { set timeout -1 spawn ssh $USERID@$HOST "passwd" expect { exit 0 |
실행 방법 |
passwd.exp ip_address old_passwd new_passwd ex) passwd.exp 10.10.10.1 noritor noritor123 noritor12345 |
위의 표의 파일명과 파일 내용으로 파일을 만든 뒤, 파일 권한을 실행 가능하게 변경한 뒤, 실행방법대로 실행하면 된다. 배포 쉘을
만들 때 꽤 유용하게 쓰인다.
'프로그래밍 > 리눅스 쉘 & utils' 카테고리의 다른 글
GIT branch 생성 및 사용법, merge (0) | 2023.11.14 |
---|---|
[gdb]coredumpctl 사용법 (0) | 2022.12.15 |
bash에서 파일 include 시키기 (source 명령어) (0) | 2013.09.11 |
expect를 이용한 자동화(2) - scp (0) | 2013.09.03 |
expect를 이용한 자동화(1) - ssh (0) | 2013.09.03 |