Поэтому, если вы хотите использовать выходные данные в lsкачестве входных данных для двух разных grepпрограмм, сохраните выходные данные каждого grepфайла в разные файлы и перенаправьте все результаты less, попробуйте:
ls -A | tee >(grep ^[.]> hidden-files)>(grep -v ^[.]> normal-files)| less
Результаты ls -Aбудут «переданы» в оба grepраздела. Файл hidden-filesбудет содержать содержимое первого вывода grep, а normal-filesрезультаты второго grep. Все файлы будут показаны в пейджере less.EDIT : что вы видите lessэто точно такой же выход из ls -A, а не результат grepс. Если вы хотите изменить вывод с ls -Aна less(например, поменять порядок, чтобы обычные файлы были перечислены перед скрытыми), попробуйте следующее:
ls -A | tee >(grep ^[.])>(grep -v ^[.])>/dev/null | less
Без >/dev/nullэтого вывод greps будет добавлен к выводу ls -Aвместо его замены.
Это отправит вывод команды grep как на терминал, так и на wc (чей вывод в свою очередь перенаправляется в файл grepresult).
«Тройник» объясняется в статье Википедии (команда) . Центральное значение таково: «Команда tee читает стандартный ввод, затем записывает его содержимое в стандартный вывод и одновременно копирует его в указанный файл (ы) или переменные».
Ответы:
Похоже,
tee
команда будет делать то, что вы хотите.Ключ должен использовать
для процесса замены . С
tee
помощью следующего шаблона:Поэтому, если вы хотите использовать выходные данные в
ls
качестве входных данных для двух разныхgrep
программ, сохраните выходные данные каждогоgrep
файла в разные файлы и перенаправьте все результатыless
, попробуйте:Результаты
ls -A
будут «переданы» в обаgrep
раздела. Файлhidden-files
будет содержать содержимое первого выводаgrep
, аnormal-files
результаты второгоgrep
.Все файлы будут показаны в пейджереEDIT : что вы видитеless
.less
это точно такой же выход изls -A
, а не результатgrep
с. Если вы хотите изменить вывод сls -A
наless
(например, поменять порядок, чтобы обычные файлы были перечислены перед скрытыми), попробуйте следующее:Без
>/dev/null
этого выводgrep
s будет добавлен к выводуls -A
вместо его замены.источник
источник
Используйте «тройник».
Пример:
Это отправит вывод команды grep как на терминал, так и на wc (чей вывод в свою очередь перенаправляется в файл grepresult).
«Тройник» объясняется в статье Википедии (команда) . Центральное значение таково: «Команда tee читает стандартный ввод, затем записывает его содержимое в стандартный вывод и одновременно копирует его в указанный файл (ы) или переменные».
источник