パスワードを設定するために、シェルスクリプトには次のような小さなコードがあります。
if [[ -z "${PASS+x}" ]]; then
read -p "enter pass or use default [test1234]" PASS
if [[ -z "$PASS" ]]; then
PASS="test1234"
fi
fi
if [ $EUID != 0 ]; then
sudo "$0" "$@"
exit $?
fi
スクリプトを実行すると、読み取りコマンドが2回実行されます。このようなことは起こってはいけません。誰もがエラーを見つけるのに役立ちますか?
フルスクリプト:github(修正済み)
ベストアンサー1
リンクしたスクリプト全体には、次のものが含まれます。
if [ $EUID != 0 ]; then
sudo "$0" "$@"
exit $?
fi
read
これは、すべてのオプション処理と質問に示されている呼び出しの後に行われます。私の考えは、再起動スクリプトを使用してこのコードブロックをタップしてコマンドをダブルsudo
クリックすることですread
。一度は再起動スクリプトを使用する前とsudo
一度は後です。