ターミナルから明示的に入力せずにシェルスクリプトでルートパスワードを提供する方法はありますか?
答え1
はい、使用できますexpect
。まだインストールしていない場合は、以下のコマンドでインストールしてください。
sudo apt-get install expect
そしてスクリプトで
#!/usr/bin/expect -f
#define password
export pass = "myPass"
spawn ssh root@remotehost
# detect password prompt
expect "*?assword:*"
# send $password
send -- "$pass\r"
#return
send -- "\r"
expect eof