長い睡眠通話の後にsudoコマンドを実行すると、sudoパスワードの再入力を求められません。

長い睡眠通話の後にsudoコマンドを実行すると、sudoパスワードの再入力を求められません。

私はX分間休止状態を維持してから、システム休止コマンドを実行する単純なbash関数を作成しようとしています(私のビューではsudo pm-suspendUbuntuにあるからです)。これで関数は次のようになります。

function sleepin {
  sleep $(bc <<< $1*60); sudo pm-suspend
}

最初のパラメータは、数分後に眠る必要があるかどうかです。問題は、スリープ後にスクリプトがsudoパスワードを求めるメッセージを表示することです。

スリープ後にsudoパスワードを求めるプロンプトが表示されないようにスクリプトを再構築するにはどうすればよいですか?

(通話を試みましたが、sudo sleepin 30まだパスワードを求めるメッセージが表示されます。睡眠呼び出しが十分に小さい場合、bashはパスワードを要求するメッセージを表示しませんが、睡眠時間が長くなるとパスワードを求めるメッセージが表示されます。)

ベストアンサー1

sudoコマンドにスリープモードを追加します。

seconds=$(($1 * 60))
sudo sh -c "sleep $seconds; pm-suspend"

おすすめ記事