removendo o novo caractere de linha do fluxo de entrada usando sed
Eu sou novo em scripts de shell e estou tentando remover o novo caractere de linha de cada linha usando o SED. isto é o que eu fiz até agora:
printf "{new\nto\nlinux}" | sed ':a;N;s/\n/ /g'
remove apenas o caractere de nova linha Ist. Eu em algum lugar encontrei este comando:
printf "{new\nto\nlinux}" | sed ':a;N;$!ba;s/\n/ /g'
mas dá: "ba: Evento não encontrado."
se eu fizer:
printf "{new\nto\nlinux}" | sed ':a;N;s/\n/ /g' | sed ':a;N;s/\n/ /g'
Em seguida, ele dá saída correta, mas eu estou procurando algo melhor como não tenho certeza quantos novos personagem eu vou ficar quando eu executar o script. fluxo de entrada é de eco ou printf ou alguma variável no script. desde já, obrigado