← retour aux snippets

pee: dupliquer un flux vers plusieurs commandes

Envoyer l'entrée en parallèle à plusieurs commandes, comme tee mais vers des process.

objectif

Appliquer plusieurs transformations/stockages en parallèle sur un même flux.

code minimal

generate | pee 'gzip -c > out.gz' 'wc -c > size.txt'

utilisation

# split en analyse + stockage
tail -F app.log | pee 'grep -i error > errors.log' 'pv -bt > /dev/null'

variante(s) utile(s)

# trois consommateurs
cat data | pee 'jq -r .id > ids.txt' 'jq -c . > data.ndjson' 'wc -l > count.txt'

notes

  • pee est dans moreutils.
  • attention aux effets de backpressure.