Sim. Nesse caso, é útil escolher um delimitador diferente como _
, assim você não precisa escapar da barra:
sed 's_\./\._0|0_'
Exemplo:
$ cat test
./.
$ sed 's_\./\._0|0_' test
0|0
Adicionar
-
-i
para alterar o arquivo em vez de imprimir a saída para stdout, -
-i.b
para fazer isso e salve um backup com.b
como extensão e -
g
para o final da expressão para alterar várias ocorrências por linha, em vez de apenas a primeira (→'s_\./\._0|0_g'
).
Explicações
-
s/A/B/
- substituaA
porB
, o mesmo ques_A_B_
,ssAsBs
ou o que você imaginar: -
s/A/B/g
- substituaA
porB
e façag
lobally, então não pare de fazer isso após a primeira descoberta (por linha!) -
\./\.
- a string literal./.
, um ponto precisa ser escapado com uma barra invertida porque eles fazem parte de expressões regulares básicas e outra pessoa pegaria qualquer caractere, correspondendoa/a
,a/b
,///
e assim por diante -
0|0
- a string literal0|0