Я пытаюсь использовать палочку команды Unix, которая похожа на форму, добавляющую столбцы, и наткнулась на головоломку, которую я никогда не знал, как решить в Unix.
Как вы можете использовать выходы двух разных программ в качестве входа для другой программы (без использования временных файлов)?
В идеале я бы сделал это (без использования временных файлов):
./progA > tmpA; . /progB > tmpB; вставить tmpA tmpB
Это кажется для меня довольно часто, но я не могу понять, как использовать вывод из двух разных программ (progA и progB) в качестве входных данных к другому без использования временных файлов ( tmpA и tmpB).
Для таких команд, как вставка, просто используя вставить $(./progA) $(./progB) (в нотации bash), не будет делать трюк, потому что он может читать из файлов или stdin.
Причина, по которой я опасаюсь временных файлов, заключается в том, что я не хочу, чтобы задания выполнялись параллельно, чтобы вызвать проблемы, используя тот же файл; что уникальное имя файла иногда затруднено.
В настоящее время я использую bash, но было бы интересно увидеть решения для любой оболочки Unix.
И самое главное, я даже правильно подхожу к проблеме?
Ура!