Como converter um único arquivo de coluna em uma única linha?

4

Eu gostaria de converter minha coluna de muitas linhas em uma linha:

exemplo:

1
1
1
1
1
2
2
2
3
3
4

e eu quero:

11111222334

alguma sugestão por favor?

    
por zara 30.09.2015 / 20:14

3 respostas

2

Você também pode tentar ecoar o comando e enviar a saída para um novo arquivo.

$ echo $(cat file) >> rows.txt

Para evitar espaços em branco entre cada linha, você pode usar sed na mesma linha

$ echo $(cat file) | sed 's/ //g' >> rows.txt
    
por 30.09.2015 / 20:25
5

colar:

$ paste -s -d "" file
11111222334

esprema todas as linhas juntas sem delimitador.

ou essas soluções que excluem até mesmo a nova linha de acompanhamento

perl -pe chomp file
awk -v ORS="" 1 file
    
por 30.09.2015 / 21:35
4

Você pode excluir todos os caracteres de nova linha com tr :

tr -d \n <infile

Observe que não há nenhum caractere de nova linha no resultado, portanto, se necessário (por exemplo, para redirecionar para outro arquivo):

{ tr -d \n <infile; printf \n; } >outfile

Se, em vez disso, você precisar dos campos separados por um espaço que pode ser executado:

row=$(tr \n \   <infile)
printf %s\n "${row%?}" >outfile

embora paste realmente brilhe aqui ...

    
por 19.12.2017 / 21:33