シェル スクリプトでルート パスワードを受け入れる方法

シェル スクリプトでルート パスワードを受け入れる方法

ターミナルから明示的に入力せずにシェルスクリプトでルートパスワードを提供する方法はありますか?

答え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

関連情報