Angenommen, ich habe die folgende Pipeline:
cmd1 < input.txt |\
cmd2 |\
cmd4 |\
cmd5 |\
cmd6 |\
(...) |\
cmdN > result.txt
Unter bestimmten Voraussetzungen möchte ich ein cmd3zwischen cmd2und hinzufügen cmd4. Gibt es eine Möglichkeit, eine bedingte Pipeline zu erstellen, ohne das Ergebnis von cmd2 in einer temporären Datei zu speichern? Ich würde an etwas denken wie:
cmd1 < input.txt |\
cmd2 |\
(${DEFINED}? cmd3 : cat ) |\
cmd4 |\
cmd5 |\
cmd6 |\
(...) |\
cmdN > result.txt