Если prog2
следует общепринятому соглашению, вы можете использовать -
в качестве «файла», чтобы сказать ему читать из стандартного ввода, а затем конвейер будет
prog1 <inputfile> - min max | prog2 - <outputfile> min max
, который сообщит prog1 для записи в stdout
в качестве выходного файла, а prog2
будет использовать stdin
в качестве входного файла с конвейером, соединяющим эти два.
Это не приведет к автоматической сортировке их, но вы можете добавить это в конвейер:
prog1 <inputfile> - min max | sort | prog2 - <outputfile> min max
И параметры не влияют на конвейер. Вам просто нужно убедиться, что программы в конвейере умеют читать из stdin (если они находятся на правой стороне канала) и писать в stdout (если они находятся на левой стороне канала).
попробуйте с:
xargs -d '\n' less
ввод в xargs, в вашем случае не заканчивается нулевым символом
Нет необходимости в трубе, используйте find
только с -name
вместо grep
и -exec
вместоxargs
:
find. -name 'Register for rehousing.html' -exec less {} \;