paste
(também um utilitário simples padrão POSIX como tr
) é sua ferramenta para isso.
Supondo que você queira que esses caracteres de nova linha sejam substituídos por um espaço, em vez de apenas removidos , como em sua amostra:
paste -d ' ' - - < file
Ou:
paste -sd ' \n' file
Substitua ' '
por '
se você realmente quiser removê-los. paste
'
Para substituir 2 de 3:
paste -sd ' \n' file
1 de 3, começando com o segundo:
paste -sd '\n \n' file
E assim por diante.
Outra coisa boa com tr -d '\n' < file
é que não deixará uma linha não terminada. Por exemplo, se você remover todas as novas linhas em um arquivo (como em tr '\n' ' ' < file
ou paste
), você não terá mais nenhuma linha, pois as linhas precisam ser terminadas com um caractere de nova linha. Portanto, geralmente é melhor usar paste -sd '
para isso (como em %code% ou %code% ), o que adicionará esse caractere de nova linha à direita necessário para ter um texto válido. paste -sd ' ' file
' file