Я знаю, что sudo bash -c 'some_command'
будет работать some_command
с теми же привилегиями, что и sudo.Что происходит, когда я sudo bash -c?
Я смущен, что происходит? Выполняется ли она some_command
в bash as sudo (то же, что и sudo bash
), а затем переключается обратно на моего текущего пользователя? Почему я не остался в экземпляре bash с привилегиями sudo, как если бы я запускал sudo bash
?
Я попробовал запустить man bash
и описывает вариант -c
(приведенный ниже). Однако, я изо всех сил, чтобы собрать как описание относится к поведению я наблюдал при работе sudo bash -c 'some_command'
Если опция -c присутствует, то команды считываются из первого, не являющегося параметром аргумента command_string. Если есть аргументы после command_string, они назначаются позиционным параметрам, начиная с $ 0.
Выполняется ли после этого выход из bash после команды после выполнения '-c'? Почему поведение отличается от того, как работает 'sudo bash', а затем указывая команду после' bash' –
Так как это работает bash. Если вы не укажете команду, тогда откроется REPL. –
Помните, если я изменю ваш ответ, чтобы добавить это к нему? Эта последняя часть в значительной степени отвечает на мой вопрос –