Я работаю над сценарии, который должен быть выполнен как корень, еще он должен остановить все.
#!/bin/bash
validationRoot() {
if [ $USER != 'root' ]
then
echo "You're not root! You can't use this script."
fi
}
validationRoot;
echo "You're root!"
Я не знаю, что добавить, добавляют после echo "You're not root! You can't use this script."
остановить выполнение.
Я сделал бы это как это:
#!/bin/bash
if [ "$(id -u)" != "0" ]; then
echo "This script must be run as root" 1>&2
exit 1
fi
Мышление, что id=0 - то, что используется в ядре для идентификации суперпользователя (или корень).
<час>редактирование: будет еще лучше перенаправить к STDERR.
<час>Вот острота:)
(( EUID )) && echo ‘You need to be root.’ && exit 1