expect 명령 사용하기
1992 단어 Linux
자동화를 위해 만져봤어요.
-
1. expect 명령은
명령의 대답을 식별하여 다음 입력에 자동으로 대응한다.
케이스 내부에 삽입하여 각종 자동화를 실현하여 가볍게 할 수 있다.
expect 명령이 설치되지 않았을 때
다음 명령을 설치해야 합니다.yum install expect
-
2.실제로 어떤 동작을 해 보았는지
대화식 명령을 스크립트화하는 방법
위의 사이트를 참고하여 운행을 시험해 보다.expect -c "
spawn [実行したいコマンド]
expect [コマンドの返答]
send -- [次のコマンド]
"
검증하기 위해 가상 기계를 만들었습니다.
★ PW 변경 시[root@localhost ~]#
[root@localhost ~]# cat /etc/passwd | grep hoge
[root@localhost ~]#
[root@localhost ~]# useradd hoge
[root@localhost ~]#
[root@localhost ~]# cat /etc/passwd | grep hoge
hoge:x:502:502::/home/hoge:/bin/bash
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# passwd hoge
Changing password for user hoge.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# cat passwd-test.sh
#!/bin/sh
export LANG=C
pw="hom7fak8eUd2"
expect -c "
spawn passwd hoge
expect \"New password:\"
send -- \"${pw}\n\"
expect \"Retype new password:\"
send -- \"${pw}\n\"
expect \"passwd: all authentication tokens updated successfully.\"
send -- \"exit\n\"
"
[root@localhost ~]#
[root@localhost ~]# ./passwd-test.sh;echo $?
spawn passwd hoge
Changing password for user hoge.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.0
[root@localhost ~]#
[root@localhost ~]# exit
logout
[user@localhost ~]$
Reference
이 문제에 관하여(expect 명령 사용하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Dace_K/items/06e6ce232b77ff242d5a
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
yum install expect
대화식 명령을 스크립트화하는 방법
위의 사이트를 참고하여 운행을 시험해 보다.
expect -c "
spawn [実行したいコマンド]
expect [コマンドの返答]
send -- [次のコマンド]
"
검증하기 위해 가상 기계를 만들었습니다.★ PW 변경 시
[root@localhost ~]#
[root@localhost ~]# cat /etc/passwd | grep hoge
[root@localhost ~]#
[root@localhost ~]# useradd hoge
[root@localhost ~]#
[root@localhost ~]# cat /etc/passwd | grep hoge
hoge:x:502:502::/home/hoge:/bin/bash
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# passwd hoge
Changing password for user hoge.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# cat passwd-test.sh
#!/bin/sh
export LANG=C
pw="hom7fak8eUd2"
expect -c "
spawn passwd hoge
expect \"New password:\"
send -- \"${pw}\n\"
expect \"Retype new password:\"
send -- \"${pw}\n\"
expect \"passwd: all authentication tokens updated successfully.\"
send -- \"exit\n\"
"
[root@localhost ~]#
[root@localhost ~]# ./passwd-test.sh;echo $?
spawn passwd hoge
Changing password for user hoge.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.0
[root@localhost ~]#
[root@localhost ~]# exit
logout
[user@localhost ~]$
Reference
이 문제에 관하여(expect 명령 사용하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Dace_K/items/06e6ce232b77ff242d5a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)