Tôi thường tìm thấy điều này trong các kịch bản (và, tôi phải thừa nhận, tự viết nó):
a=$(echo "$x" | sed "s/foo/bar/")
hoặc là
if echo "$x" | grep -q foo
then
...
fi
Xem xét "foo" để bao gồm một số công cụ regex.
Tôi cảm thấy rằng nên có - và rất có thể là - một cách tốt hơn để diễn đạt điều này, một cách không liên quan đến hai lệnh và một đường ống nhưng kết hợp điều đó thành một biểu thức nhỏ gọn hơn.
Tôi không thể tìm thấy nó. Có ai không
$()
thay vì backticks.
a="$(echo "$x" | sed "s/foo/bar/")"
và if echo "$x" | grep foo; …
.