Проверьте стандартный вывод из середины связанных приложений - PullRequest
0 голосов
/ 30 сентября 2010

Рассмотрим пример цепочки:

cat foo.txt | grep -v foo | grep -v bar | grep -v baz

Я хотел бы проверить содержимое stdout второго grep, а также полученный stdout:

cat foo.txt | grep -v foo | grep -v bar | UNKNOWN | grep -v baz

Поэтому мне нужен инструмент, UNKNOWN, который, например, выводит содержимое стандартного вывода в файл и также передает стандартный вывод по цепочке.

Существует ли инструмент UNKNOWN (ответы как для Windows, так и для Linux актуальны)?

Ответы [ 2 ]

1 голос
/ 30 сентября 2010

Я думаю, что есть вещь, называемая «ти», которая дает вам это.

Обновление отражающего комментария от Боба: cat foo.txt |grep -v foo |grep -v bar |ти-инспекция.txt |grep -v baz

0 голосов
/ 30 сентября 2010

Невозможно дать ему шанс, но, как указали Габриэль и Боб, команда $ tee (man tee) поможет вам. Команда tee примет ввод и выведет его на стандартный вывод, а также на файлы. Как сказал Боб в своем комментарии:

cat foo.txt | grep -v foo | grep -v bar | tee -a inspection.txt | grep -v baz

Возьмет вывод из grep -v bar и поместит его в стандартный вывод, а также инспекцию. Txt. Флаг -a заставляет его добавлять к проверке, а не создавать новый файл.

...