gitリポジトリからソフトウェアの最新バージョンを取得し、設定ファイルを更新するスクリプトを作成しようとしています。レポから引き出すときには、パスワードを入力する必要があります。私はスクリプトがすべてを自動化したいので、私は自動的にそれを記入する必要があります。このサイトでは、パスワードプロンプトを探してパスワードを送信するために "expect"を使用する方法を説明しました。私はそれを動作させることはできません。ここにスクリプトがあります:bashスクリプトでexpectを使用する
#!/usr/bin/expect -f
set password [lrange $argv 0 0]
set timeout -1
clear
echo "Updating Source..."
cd sourcedest
git pull -f origin master
match_max 100000
# Look for passwod prompt
expect "*?assword:*"
# Send password aka $password
send -- "$password\r"
# send blank line (\r) to make sure we get back to gui
send -- "\r"
expect eof
git checkout -f master
cp Config/database.php.bak Config/database.php
cp webroot/index.php.bak webroot/index.php
cp webroot/js/config.js.bak webroot/js/config.js
私は間違っていますか?ここに私がそれを得たサイトがあります:http://bash.cyberciti.biz/security/expect-ssh-login-script/
スポーンを忘れたとします。 – bdecaf
私はその部分を望んでいません。私はこれを私のローカルマシンの中で実行しています。 – LordZardeck
git、cd、cpには有効なexpectコマンドがありません。あなたはそれのためのシェルを生成する必要があります。 – bdecaf