Substituindo '\/'' por sed

Substituindo '\/'' por sed

Como posso substituir a string abaixo \/por |algo como:

bssapi_6 0\/0\/0\/9\/9

bssapi_6 0|0|0|9|9

Responder1

Com quantidades liberais de escape aplicadas:

sed 's/\\\//|/g' < inputfile

Tornando-o mais legível usando @como separador:

sed 's@\\/@|@g' < inputfile

Responder2

Qualquer:

sed 's/\\\//|/g' your_file

ou, usando _como delimitador de padrão para não precisarmos escapar de /:

sed 's_\\/_|_g' your_file

Responder3

Usando awk:

para arquivoinput

$ cat input
bssapi_6 0\/0\/0\/9\/9

O seguinte faria:

awk '{gsub(/\\\//,"|"); }1' input

Como queremos substituir \/por |, aqui ambos \e /são escapados como \\e \/respectivamente. Portanto regex é \\\/.

informação relacionada