Добавление символа табуляции перед выводом внешнего скрипта
Итак, у меня есть сценарий оболочки для автоматизации некоторых команд SVN. Я выводил как файл журнала, так и stdout во время скрипта и направлял вывод SVN в /dev/null. Теперь я хотел бы включить вывод SVN в свой журнал, но чтобы отделить его от моего собственного вывода, я хотел бы добавить t
для каждой строки вывода SVN. Можно ли это сделать с помощью сценариев shell?
редактировать Это то, для чего я могу использовать AWK? Я проверю!
редактировать Так, использование AWK, похоже, делает трюк. К сожалению,я не могу заставить его работать с командами svn.
svn add * | awk '{ print "t" }'
выходы без добавленного символа вкладки. Но если я запускаю например ЛС
ls -l | awk '{ print "t" }'
каталог указан с символом табуляции перед каждой строкой.
редактировать Спасибо @Даниил! Я закончил с этим
svn add * 2>&1 | sed 's/^/t/'
можно также отметить, что awk хорошо работает для этого, когда используется правильно
svn add * 2>&1 | awk '{print "t" }'
1 ответов
Вы можете использовать Sed. Вместо перенаправления вывода вашей команды SVN на /dev/null
, вы можете передать его в Sed.
svn ls https://svn.example.com 2>&1 | sed 's/^/ /'