У меня есть сценарий, где я хочу сделать эквивалент:Как перенаправить/передать весь вывод сценария оболочки терминала в другую программу из сценария?
myscript | anotherprogram
но изнутри сценарий. Я не хочу ссылаться
mysubtask | anotherprogram
каждый раз я должен запускать мои подзадачи в моем сценарии, я просто хочу, чтобы фильтр начал и все мои OUT & ERR смаршрутизирован (сценарий не является интерактивным).
Таким образом, в конце концов, что я хочу сделать, это
- Установите OUT & ERR на вход anotherprogram. anotherprogram будет запускаться только для одного экземпляра скрипта, чтобы весь мой вывод шел к нему.
- Выполнить остальную часть моего сценария, как обычно с OUT & ERR моих последующих эху и подзадач выходов собирается anotherprogram непрерывно (я только хочу anotherprogram запустить один раз, то есть в течение всего остального моего скрипта)
Какой один приводит к сокращению вилок? – CyberSkull
В моей системе (Mac OS X, zsh 5.0.0) есть два вилки в первом случае, ноль во втором. – aymericbeaumet
Я предполагаю, что последний (просто нарисовал 'anotherprogram', а не подоболочку), хотя вы также можете попробовать использовать' {...} 'вместо' (...) 'для группировки команд без необходимости запускать подоболочка. –