Это может быть сделано с помощью метода процесса , из bash ref:
Замена процесса позволяет ссылаться на вход или выход процесса, используя имя файла.Он принимает форму
<(список) </p>
или
> (список)
Список процессов запускается асинхронно, и его ввод или выводотображается как имя файла.
Используя эту технику, вы в основном можете прочитать вывод команды (список в приведенном выше примере), как если бы вы читали из файла.Фактически, вы можете иметь несколько входных данных, которые могут решить вашу проблему следующим образом:
command3 <( command1 ) <( command2 )
Для этого вам нужно открыть оба файла (полученные в качестве аргументов) и прочитать их.
Подстановка процесса в основном создает файл (/ dev / fd / XX) и использует его имя в качестве входных данных для принимающей команды (command3 в приведенном выше примере).Пожалуйста, имейте в виду, что команды command1 и command2 будут выполняться асинхронно, поэтому вы не можете ожидать / полагаться на какой-либо порядок выполнения при запуске вышеуказанной команды.