sh оценивает код bash из родительской оболочки и ломает

Просто и понятно!

<command> | head -n 1; <command> | sed 1d | sort <....>
  • sed nd ---> 'n' указывает номер строки, а 'd' означает удаление.
2
10.05.2018, 10:47
1 ответ

Без обид, но вы пытались прочитать и понять сообщение об ошибке:

syntax error near unexpected token `>'

Это явно говорит о том, что ваш код содержит очевидную ошибку:2> >(. '> 'направляет стандартный вывод в файл. Вы пытаетесь направить внутренний вывод r2g _на чтение сценария со стандартного ввода. Вы должны использовать ' | 'не'>'.

И еще одна ошибка --вы можете направить stdout и stderr в отдельные файлы, но вы не можете легко направить их в отдельные скрипты.Вам придется сначала записать их в файлы, а затем обрабатывать отдельно.

r2g_internal "$@" 1> stdout.txt 2> stderr.txt
cat stderr.txt | ( while read line; do echo "r2g error: $line"; done )
cat stdout.txt | ( while read line; do echo "r2g: $line"; done )
-1
27.01.2020, 22:09

Теги

Похожие вопросы