Я хочу передать несколько копий stdin в разные stdins/FDs в bash. Пример:Дупликация дескриптора файла
for host in $hosts; do
exec_magic_stdin_dupe {FH}
ssh $host someProgram <&$FH
done
Я использовал GNU параллельно немного, но у меня есть некоторые оговорки с ним и на самом деле думал, что это должно быть что-то баш может сделать в одиночку. Единственный способ я нашел, что это что-то вроде этого является «тройник» с ним подоболочка замены, как:
tee >(ssh $hostOne someProgram) >(ssh $hostTwo someProgram) ... > /dev/null
Но это означает, что я должен выполнить какую-то петлю, создавая команду большой «Tee» а затем выполнить его через «eval» (или аналогичный).
Я мог бы это сделать, управляя своими собственными фифами, но это не особенно предпочтительное решение.
Все вышесказанное может работать. Я просто хочу проверить, что я не пропустил какой-либо способ реализовать «exec_magic_stdin» перед тем, как реализовать одно из этих решений.
Это просто опечатка: дублирование. – chepner