/ / Jak zastąpić wszystkie typy łańcuchów meta / alfanumerycznych / używając Perla lub powłoki [duplikat] - wyrażenie regularne, łańcuch, perl, powłoka, metaznaki

Jak zamienić wszystkie typy łańcuchów meta / alfanumeryczne / używając Perla lub powłoki [duplicate] - regex, string, perl, shell, metaznaki

sed -i "s/"$search"/"$replace"/g" $file

to polecenie jest w stanie zastąpić tylko ciągi znaków, ale chciałem wyszukać i zamienić dowolny ciąg znaków w pliku

Np .: jeśli podam dane

 $search= /jms/CodeBasev1.23*
$replace= /jms/CodeBasev1.24/baseline*.

powinien szukać dokładnego ciągu i zastępować wiersz dokładny. Nie tylko za pomocą ukośników, ale także akceptować meta-znaki

np .: [..],%, &, () ..etc

Odpowiedzi:

0 dla odpowiedzi № 1
perl -0777 -pi -e"s/Q$ENV{search}/$ENV{replace}/g" $file

-0777 jest konieczne tylko wtedy, gdy szukany ciąg zawiera dosłowne znaki nowej linii.