A linha vazia vem de você substituindo o texto por nada.
Em vez de usar uma substituição ( s
), use uma exclusão ( d
):
sed -i "/define( 'DISALLOW_FILE_EDIT', true );/d" ./wp-config.php
Eu adicionei uma linha a um documento com um documento de gato
cat <<-'DEFINE' >> ./wp-config.php
define( 'DISALLOW_FILE_EDIT', true );
DEFINE
Mais tarde, queria removê-lo e fiz:
sed -i "s/define( 'DISALLOW_FILE_EDIT', true );//g" ./wp-config.php
Depois de removê-lo, notei uma linha extra vazia onde o código estava - Esta é realmente a coisa natural a acontecer - sed acabou de apagar o código, não a linha inteira.
Minha pergunta é: posso usar sed para realmente remover toda a linha, e não apenas o código dentro dela?
Tags sed