Combine vários arquivos de texto em um arquivo

6

Estou usando o comando unix pr para combinar vários arquivos de texto em um arquivo de texto:

pr -F *files > newfile

Cada arquivo tem um comprimento diferente, um número diferente de linhas. Estou muito feliz com o resultado, eu gosto que inclui o nome do arquivo de texto original seguido do conteúdo desse arquivo. No entanto, gostaria de eliminar as linhas em branco entre o nome do arquivo de texto original e seu conteúdo. Eu só quero linhas em branco entre os diferentes arquivos de texto para separar cada um. Além disso, ele imprime o caractere ^L após o conteúdo de cada arquivo de texto e eu gostaria de eliminar esse caractere.

Cada arquivo lido também recebe um número de 'página'. Apenas um arquivo é maior que o padrão de 66 linhas. esse arquivo acaba sendo cuspido em 2 'páginas' e é dividido em duas seções divididas por linhas em branco. É possível escrever esse texto continuamente sem que ele seja dividido?

Obrigado por qualquer ajuda!

    
por janet 11.07.2013 / 06:38

3 respostas

8

Você pode usar o utilitário AWK:

awk 'FNR==1{print ""}{print}' *files > newfile

Fonte: link

    
por Radu Rădeanu 11.07.2013 / 07:03
7

Para ter linhas vazias entre arquivos:

cat file1 newline file2 newline file3 > newfile

Onde "nova linha" é um arquivo com linha vazia.

    
por Darius Žitkevičius 11.07.2013 / 08:55
0

Você pode usar cat para despejar o texto dos arquivos em um arquivo com:

cat file1 file2 file3 > newfile
    
por Atari911 11.07.2013 / 06:51