Описание тега libertas
СШ выполняет команду оболочки. Он связывает его параметры с пробелами и запускает эту команду удаленно. Таким образом, когда вы введите это в ваш местный оболочки
СШ до@nagios1 судо Су - корневой -С 'Е "Disable_Notification;web01;приложение:котяра:журнал:приложение" >> /опт/среда/среда.УМК'
это то, что выполняется в удаленной оболочки:
судо Су - корневой -C-функции printf "Disable_Notification;web01;приложение:котяра:журнал:приложение" >> /опт/среда/среда.УМК
Как вы можете видеть перенаправление на внешнюю удаленной оболочки вызывается демон
, а не во внутренней оболочке запущен Су
. Вам нужен дополнительный слой цитирую: один, чтобы защитить специальные символы из локальной консоли, так что они достигают удаленной оболочки, и один, чтобы защитить специальные символы от внешнего дистанционного оболочки таким образом, что они достигают внутренней удаленной оболочки вызывается Су
(плюс третья строка для печати так, что она проходит, что внутренняя оболочка).
СШ до@nagios1 'судо Су - корневой -С '\"Е "Disable_Notification;web01;приложение:котяра:журнал:приложение" >> /опт/среда/среда.УМК'\'
Вы можете сделать с одним меньше уровень цитирования, выполнив печать в непривилегированном оболочки и трубопроводов через привилегированные команды (которые не должны быть раковины), что просто пишет в файл.
СШ до@nagios1 'е "Disable_Notification;web01;приложение:котяра:журнал:приложение" | судо тройник /опт/среда/среда.УМК'
И вы даже можете сделать печать на местах, что исключает другого уровня необходимых цитирование.
е "Disable_Notification;web01;приложение:котяра:журнал:приложение" | СШ до@nagios1 судо тройник /опт/среда/среда.УМК
И вместо того, чтобы использовать печать ... | ...
вы можете использовать здесь строку (при условии, что местные оболочка КШ, в bash или zsh).
СШ до@nagios1 судо тройник /опт/среда/среда.УМК <<<"Disable_Notification;web01;приложение:котяра:журнал:приложение"