2338 shaares
Ben putain, c'est bon à savoir:
some-command <(another-command)
va exécuter "another-command" -- il faut que cette autre commande écrive le résultat dans stdout -- et va passer le résultat à some-command (avec some-command une commande qui prend un nom de fichier comme argument). Donc pas besoin de stocker dans les fichiers, on passe directement le résultat du l'une à l'autre. Comme un pipe, sauf que (i) on peut substituer autant de commande qu'on veut, par exemple:
diff <(curl http://somesite/file1) <(curl http://somesite/file2)
va substituer les deux curl et les passer à diff; et (ii) les commandes substituées sont lancées en parallèle et pas à la suite.
some-command <(another-command)
va exécuter "another-command" -- il faut que cette autre commande écrive le résultat dans stdout -- et va passer le résultat à some-command (avec some-command une commande qui prend un nom de fichier comme argument). Donc pas besoin de stocker dans les fichiers, on passe directement le résultat du l'une à l'autre. Comme un pipe, sauf que (i) on peut substituer autant de commande qu'on veut, par exemple:
diff <(curl http://somesite/file1) <(curl http://somesite/file2)
va substituer les deux curl et les passer à diff; et (ii) les commandes substituées sont lancées en parallèle et pas à la suite.