Puoi usare sed per questo:
$ sed s/sara/mary/g <<< 'hello sara , my name is sara too .'
hello mary , my name is mary too .
O se vuoi cambiare un file sul posto:
$ cat FILE
hello sara , my name is sara too .
$ sed -i s/sara/mary/g FILE
$ cat FILE
hello mary , my name is mary too .
Puoi usare sed:
# sed 's/sara/mary/g' FILENAME
produrrà i risultati. Il costrutto s/// significa ricerca e sostituzione utilizzando espressioni regolari. La 'g' alla fine significa "ogni istanza" (non solo la prima).
Puoi anche usare perl e modificare il file sul posto:
# perl -p -i -e 's/sara/mary/g;' FILENAME
Oppure awk
awk '{gsub("sara","mary")}1' <<< "hello sara, my name is sara too."
Modo bash puro:
before='hello sara , my name is sara too .'
after="${before//sara/mary}"
echo "$after"
O usando sed:
after=$(sed 's/sara/mary/g' <<< "$before")
echo "$after"
USCITA:
hello mary , my name is mary too .