bat comando que substitui número e palavra por dois

1

1) comando sed que coloca dois dos primeiros 'w' em cada linha. Por exemplo, "hewor"="hewwor".

e

2) comando sed que coloca dois do primeiro dígito em cada linha E.g "hew0r"="hew00r"

Para o primeiro eu consegui

$ sed s/w/ww/ 

para o segundo, não entendo como replicar o mesmo dígito, por exemplo, obtive

$ sed s/[0-9]/00/

funcionaria, mas deveria ser zero a cada vez. Como obtenho o mesmo dígito?

    
por Tinler 22.01.2018 / 01:08

1 resposta

2

Você precisa usar o recurso sed , chamado grupos (pode não ser a melhor referência, tente procurar por outros tutoriais). No seu caso, a solução é

sed 's/\([0-9]\)//' input_file.txt

o regexp do primeiro grupo \([0-9]\) irá corresponder a qualquer dígito, e a parte diz para substituir o primeiro grupo por si mesmo repetido duas vezes.

    
por 22.01.2018 / 01:25

Tags