Ich finde das oft in Skripten (und ich muss zugeben, ich schreibe es selbst):
a=$(echo "$x" | sed "s/foo/bar/")
oder
if echo "$x" | grep -q foo
then
...
fi
Betrachten Sie "foo", um einige Regex-Sachen aufzunehmen.
Ich bin der Meinung, dass es einen besseren Weg geben sollte - und höchstwahrscheinlich auch gibt -, der nicht zwei Befehle und eine Pipe beinhaltet, sondern das Ding in einen kompakteren Ausdruck einwickelt.
Ich kann es einfach nicht finden. Irgendjemand?
$()
Ersetzen von Befehlen eher Backticks als Backticks.
a="$(echo "$x" | sed "s/foo/bar/")"
und if echo "$x" | grep foo; …
.