Если я запустил команду.
sudo some-command && some-other-command
Является ли вторая команда также запущена с sudo?
sudo some-command && sudo some-other-command
sudo sh -c "some-command && some-other-command"
или если вы хотите выполнить команды гнезда:
sudo bash <<"EOF"
some-command
some-other-command
sudo bash <<"EOF2"
some-command2
some-other-command2
EOF2
EOF
Второй использует другую оболочку. Имейте в виду, что, когда вы используете «или» во второй версии, вам нужно избегать тех, которые находятся в командах или параметрах этой команды (то есть. \ 'Или \ "), так что они могут быть сложными очень быстро. Нет, либо вы должны написать sudo дважды, либо сделать что-то вроде
sudo bash -c 'foo && bar'
&& означает, что правая односторонняя (вторая) команда будет выполняться только в том случае, если успешно выполнена первая (первая) команда, то есть код выхода $? равен 0.
Две команды отличаются друг от друга и будут работать в их собственных средах, поэтому вторая команда не будет работать с привилегией sudo.
Это позволит вам очистить:
$ sudo whoami && whoami
root
foobar
В командной строке, когда вы видите
$ command one && command two
, типичным намерением является выполнение команды, следующей за & amp; & amp; только если первая команда выполнена успешно.
абсолютно нет, это так же, как запись двух последовательных команд, это & amp; & amp; не дает никаких дополнительных привилегий команде.
Чтобы доказать это, возьмем пример.
touch fileA fileB
Я создал два файла fileA и fileB. Теперь я запустил команду
sudo chown test:test fileA && chown test:test fileB
Я меняю владельца и группу этих файлов на проверку имени пользователя и группы. Теперь первая команда должна запускаться, а другая -
Выход:
chown: changing ownership of `fileB': Operation not permitted
Таким образом, команда не запускалась, так как она нужна sudo, и хотя мы можем заключаем, что & amp; & amp; не является заменой второго sudo
НЕТ, а следующее было обычно очень широко.
sudo reboot && exit
Как раз все должны были сделать это хотя бы один раз
sudo apt-get update && sudo apt-get upgrade
Таким образом, это отличный вопрос «mickey mouse».
Это настолько легко проверено, что вопрос может быть заподозрен в упражнении для заполнения статистики.