Выполнять команды из канала в реальном времени

Если у меня есть труба, как cat /dev/somedevice | grep 'test' что вывод команд, как например echo 'test 17', команды появляются в реальном времени (каждый раз /dev/somedevice доставляет какую-то строку). Однако если я передам команды shони не будут вызваны немедленно из-за буферизации канала. Так

cat /dev/somedevice | grep 'test' | sh

не будет выполнять команды в режиме реального времени.

Есть ли другой способ, который бы? С xargs или что-то?

1 ответ

Пытаться --line-buffered сделать непрерывный поток:

cat /dev/somedevice | grep --line-buffered 'test' | sh
Другие вопросы по тегам