Co robi opcja „-e” w sed?

7

Próbuję zrozumieć skrypt powłoki, który używa sed. Odkryłem, że niektóre miejsca sedzostały przywołane z tą -eopcją.

Próbowałem zobaczyć manstronę, a ona tylko wspomina,

-e polecenie

Dołącz polecenia edycji określone przez argument polecenia do listy poleceń.

co nie jest dla mnie bardzo jasne.

Czy ktoś może mi uprzejmie wyjaśnić, co -erobi? Dzięki.

PS: Używam sedw Mac

Sudar
źródło

Odpowiedzi:

7

W -e parametry nakazuje sed że chcesz dostarczyć wielu poleceń:

sed -e 's/string1/string2/g' -e 's/string4/string5/g'

Spowoduje to zastąpienie łańcuch1 z łańcuch2 i string4 z string5 .

Sean Landsman
źródło
Dzięki. To wyjaśnia to. Teraz tajemnicza wiadomość w manpoleceniu ma sens.
:-) cieszę się, że mogłem pomóc
1
Dlaczego jest to akceptowana odpowiedź? Jeszcze nie naprawdę ujawniają prawdziwy cel -e, ponieważ Powyższy skrypt można zrobić podobnie przez: sed 's/string1/string2/g;s/string4/string5/g' file. Niezależnie od tego, jakie masz osobne wyrażenia, możesz połączyć je w jedno wyrażenie, a następnie upuścić -e. Czy ktoś może ujawnić cel konieczności -ew sed?
typelogiczny
1
@daixtr Wyjaśniono w tej odpowiedzi .
weibeld