sudo
не является привилегией, специфичной для сессии. sudo
это команда, которая запускает другие команды с повышенными привилегиями Так что просто запустите ваш tee
с sudo
:
2>&1 | sudo tee -a /tmp/Solr_Install.log W
Я пишу установочный скрипт, и мне нужно запустить его, так sudo
как я тестирую его на экземплярах AWS RedHat, поэтому не могу напрямую перейти root
. Я хочу записать журнал в файл, а также на экран. Нет ничего проще,
Я могу либо пойти в старую школу >> /tmp/Solr_Install.log 2>&1
и запустить хвостовой процесс в фоновом режиме: tail -f installer.log &
это решение имеет тенденцию дублировать или утроить выходные данные на экране, поэтому я выбрал решение «тройник-тоталлер».
Просто используйте силу силы, и 2>&1 | tee -a /tmp/Solr_Install.log
с этим решением я теряю свои права sudo, и сценарий не выполняется.
Вопросы: почему хвост показывает одну и ту же линию 2-3 раза? (Это как-то связано с тем, что tail -f
отображаются последние 10 строк?)
Можно ли это как-то исправить?
Почему я теряю свое sudo, когда я чаю?
Можно ли этого избежать?
Есть ли другой способ выбросить материалы журнала в файл и на экран одновременно?
sudo
не является привилегией, специфичной для сессии. sudo
это команда, которая запускает другие команды с повышенными привилегиями Так что просто запустите ваш tee
с sudo
:
2>&1 | sudo tee -a /tmp/Solr_Install.log W