Eu tenho um arquivo txt
123
456
789
456
123456
Quero excluir caracteres específicos do arquivo, ou seja, (123). Eu tentei com
$ sed -i '/123/d' dummy.sh
$ vi dumm.txt
456
789
456
No comando abaixo, quando executo, as duas palavras ( 123
e 123456
) estão sendo excluídas, mas preciso excluir apenas 123
do arquivo
$ sed -i 's/123//g' dummy.sh
$ vi dumm.txt
456
789
456
456
quando executo o comando abaixo, o 123
está sendo substituído por nulo.
Alguém pode dizer como excluir uma linha inteira se ela contiver apenas um número específico?
2
Em uma palavra - anchors
—
steeldriver
eu não entendi o que você está perguntando?
—
Rak Kundra
Observe que, embora seja perfeitamente aceitável usar o sed para esta tarefa, o grep é a ferramenta que foi criada especificamente para exibir ou ocultar linhas de entrada correspondentes ao padrão. Nesse caso, o seguinte comando grep faria o mesmo: grep -E -v '^ 123 $' dumm.txt
—
Gnudiff
@ Gnudiff Não vejo nenhuma vantagem
—
Philippos
grep
se você usar é assim. Mas pode ser superior para algumas tarefas devido à sua opções:grep -xv 123