Usando o separador de registros de saída do Awk, ORS :
awk 'BEGIN{ORS=",";}1' infile
Dados no arquivo:
1234567-5678907 3456789-1234563 3456789-1234567 . . . . n
Agora quero a saída no formato abaixo:
1234567-5678907,3456789-1234563,3456789-1234563....n
Eu usei o comando abaixo, mas estou recebendo uma vírgula extra ao iniciar:
awk -F"-" ' {printf ",%s-%s",$1,$1} END{print""}'
Por favor, compartilhe o comando que pode ser usado em um script de shell.
Usando o separador de registros de saída do Awk, ORS :
awk 'BEGIN{ORS=",";}1' infile
Já existe uma solução baseada em paste
no comentário acima. Mas se você preferir awk
, aqui está uma awk
-solution:
awk 'BEGIN{RS="";OFS=","};$1=$1'
Ele não cria uma vírgula espúria no final e termina adequadamente a saída por uma nova linha.