shutdown задает время выключения системы. Его можно использовать для остановки, выключения питания -или перезагрузки машины.
shutdown -h
эквивалентно :shutdown --poweroff
, просто это означает POWEROFF.
другой рукой
shutdown -H
или
shutdown --halt
указывает аппаратному обеспечению остановить все функции ЦП, но оставляет его включенным. Вы можете использовать его, чтобы привести систему в состояние, при котором вы можете выполнять техническое обслуживание на низком уровне. Обратите внимание, что в некоторых случаях это полностью выключает систему. Ниже приведены примеры остановки
Мне кажется, что скрипт bash работает правильно. Вы работаете как abc
, что означает, что первый тест неверен(abc
равен abc
), поэтому оценка продолжается до следующего теста, который является истинным(abc
не равен xyz
), и скрипт завершает работу, потому что вы получить false || true || true
, который равен true
.
Если вы хотите «Запустить оставшийся сценарий», если пользователь является одним из abc
, xyz
, pqr
, вы должны использовать ИЛИ с ==
и поменять местами условия if
и else
или оставить это то же самое и использовать И.
Так что либо что-то вроде этого:
if [ "$(whoami)" != "abc" ] && [ "$(whoami)" != "xyz" ] && [ "$(whoami)" != "pqr" ]
then
exit 1
else
echo "Run remaining script"
fi
или:
if [ "$(whoami)" == "abc" ] || [ "$(whoami)" == "xyz" ] || [ "$(whoami)" == "pqr" ]
then
echo "Run remaining script"
else
exit 1
fi
Альтернативой этой строке if может быть:
case "$(whoami)" in
abc|xyz|pqr) : # we do nothing here,
;; # and exit the case
*) exit 1 # for all other values (*) : we exit 1, terminating the script
;;
esac
# here, we only continue if the case before had abc, xyz or pqr
...