Как добавить текст в защищённый файл с помощью sudo

Потребовалось в скрипте автоматически генериующем инфрасруктуру домена (директории в httpd, имя домена, алиас в вебсервере, ..) выполнить подобный скрипт

echo echo $d IN  A 192.168.80.76 >> /etc/bind/xxx.hosts

ну и разумеется получаю

bash: /etc/bind/xxx.hosts: Permission denied

Немножечко усложняем команду и получаем нужный результат

echo "echo $d IN  A 192.168.80.76 >> /etc/bind/xxx.hosts" |sudo sh
ffsdmad@ffsdmad:~$

тут на лету генерируется скрипт добавляющий A запись в зону, который передаётся на выполнение оболочке запущенной с правами root

 

Комментариев 0
Нужна авторизация с помощью
Об авторе
Илья Илья

меня можно найти тут