Saya telah meretas bersama skrip bash ini yang menguji apakah pengguna memiliki hak pengguna super dan jika mereka tidak meminta mereka. Pada akhirnya saya mencoba untuk membalikkan pernyataan 'jika' kedua sehingga saya dapat menghapus dua baris berikut (gema "kata sandi ok" dan yang lainnya pada baris berikut)
# 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"
Apakah tujuan "benar" pada baris keempat hanyalah pernyataan nol?
Saya perlu membalikkan tes pada baris keempat, bagaimana saya melakukannya? Inilah yang saya coba:
if sudo false; then
if sudo true == false; then
if [!(sudo true)]; then
echo "Aborting script" >&2