3

Возможно ли в unix/bash передавать данные из двух команд в другую?

Я попытался выполнить следующую команду, которая успешно выполнила обе команды, но первая была передана в stdout, а вторая - в меньшую.

$ grep 40515575 * && zgrep 40515575 * | less

2 ответа2

3

Попробуйте это вместо этого:

$ ( grep 40515575 * && zgrep 40515575 * ) | less
0

В зависимости от системы, вы можете обнаружить, что «less» способен или распознает много разных типов файлов, таких как сжатые файлы gzip и bzip2.

Возможно, что вы действительно хотите сказать, это:

less * | grep 40515575 | less

Полезно помнить, что в этом случае начальный «less» действует как «cat», поскольку его вывод не относится к TTY.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .