ユーザーがスーパーユーザー特権を持っているかどうか、またそうでないかどうかをテストするこのbashスクリプトを一緒にハックしました。最終的に、次の2行を削除できるように、2番目の「if」ステートメントを反転させようとしています(エコー「password ok」と、次の行のelse)
# Root user only
if [[ "$EUID" != 0 ]]; then
sudo -k # make sure to ask for password on next sudo
if sudo true; then
echo "Password ok"
else
echo "Aborting script"
exit 1
fi
fi
echo "do my ops"
4行目の "true"の目的は単なるnullステートメントですか?
4行目のテストを反転する必要がありますが、どうすればよいですか?ここに私が試したものがあります:
if sudo false; then
if sudo true == false; then
if [!(sudo true)]; then
echo "Aborting script" >&2