入力としてパスワードを要求するスクリプトファイルを実行しようとしています。コマンドに自動的に必要なコマンドを与える方法はありますか? usernameには-U
のパラメータを持ちますが、パスワードにはパラメータがないのはpsqlです。スクリプトの実行中に自動的に入力する方法はありますか?
例:
[email protected]:~$ sh redshift.sh
Password for user xyz:
入力としてパスワードを要求するスクリプトファイルを実行しようとしています。コマンドに自動的に必要なコマンドを与える方法はありますか? usernameには-U
のパラメータを持ちますが、パスワードにはパラメータがないのはpsqlです。スクリプトの実行中に自動的に入力する方法はありますか?
例:
[email protected]:~$ sh redshift.sh
Password for user xyz:
に答えています。ここ は簡単な例です:
#!/usr/bin/expect -f
set PASSWORD "1"
set USER "dvp"
spawn psql -U ${USER} -W
expect "*?assword*"
send -- "${PASSWORD}\r"
expect eof
おそらくあなたが最初expect
をインストールする必要があります(http://stackoverflow.com/questions [インタラクティブに対話型プログラム以外に引数を渡す]の
sudo apt-get install expect
可能な重複/ 14392525/pass-arguments-interactive-program-non-interactively) –