特定のコマンドを実行するためにroot以外のユーザーアカウントが必要なシェルスクリプトがあり、残りのスクリプトを実行するためにユーザーをrootに変更します。SUSE11を使用しています。私はパスワードプロンプトを自動化することを期待して使用しました。しかし、spawn su-を使用してコマンドを実行すると、プロンプトがrootで返され、スクリプトの残りの部分は実行されません。
例えば。
< non-root commands>
spawn su -
<root commands>
しかし、suの後、プロンプトはユーザーをrootとして返します。スクリプトの残りを実行する方法。
sudo -Sオプションは、マシンのIPアドレスを見つけるために必要なsudo -S ifconfigコマンドを実行しないため、役に立ちません。
私はすでにこれらのリンクを通り抜けましたが、解決策を見つけることができませんでした: シェルスクリプトでスクリプトディレクトリをユーザーのホームディレクトリに変更します