LINUX.ORG.RU
Ответ на: комментарий от aureliano15

Допустим чем отличается

sh -c "echo 'DenyGroups gameservers' >> /etc/ssh/sshd_config"
в bash файле от
echo 'DenyGroups gameservers' >> /etc/ssh/sshd_config

MrSullex
() автор топика
Ответ на: комментарий от MrSullex

sh -c выполняет команду от sh шелла

Вторая строчка выполняется от bash шелла

Deleted
()
Ответ на: комментарий от MrSullex

Попробуй запустить первую и вторую команду с использованием sudo из-под непривелигерованного пользователя да так, что файл после >> не был этому пользователю доступен на запись. Это из практического примера, который подсказывает, в чем разница между ними.

anonymous
()
Ответ на: комментарий от MrSullex

Допустим чем отличается

sh -c "echo 'DenyGroups gameservers' >> /etc/ssh/sshd_config"
в bash файле от
echo 'DenyGroups gameservers' >> /etc/ssh/sshd_config

DATRAT уже ответил, но я уточню. Во втором случае работает конкретная оболочка (например, bash) в интерактивном режиме, позволяя запускать доступные команды. В первом же случае запускается команда sh, обычно являющаяся символической ссылкой на bash, но иногда на что-то ещё (например, на dash), в пакетном режиме (т. е. без командного приглашения). И запускать её можно как из другой (или той же самой) shell, так и из любой программы на Си или на python или на чём-то ещё. А можно щелчком мыши из ярлыка на рабочем столе.

aureliano15 ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.