Remova a string “\ n” do final de certas linhas

2

Como eu removo a string "\ n" (não o caractere de nova linha) do final das linhas que começam com a string "///"? Obrigado.

Exemplo de entrada:

Some text\n

/// Some comment\n

Saída desejada:

Some text\n

/// Some comment

Eu tentei usar

sed -i 's/\n*$//' $1

Mas, remove todas as sequências "\ n" finais.

    
por caleb_hendrix 12.07.2018 / 01:30

1 resposta

2

Adicione um especificador de endereço regex no início - como seu padrão possui barras, fica mais claro se você usar um separador de expressão diferente:

sed -i '\%^///% s/\n$//' Input

Teste:

$ sed '\%^///% s/\n$//' Input 
Some text\n

/// Some comment

Se você preferir "palitos inclinados"

sed -i '/^\/\/\// s/\n$//' Input
    
por 12.07.2018 / 01:35

Tags