Qual é a maneira mais rápida de combinar dois ou mais arquivos no Linux?

4

Eu quero combinar dois ou mais arquivos no Linux, então estou usando o seguinte comando:

cat small_file LARGE_File LARGER_FILE > SUM_OF_FILES

No entanto, isso é muito lento.

Alguém conhece uma ferramenta do Linux que combina os arquivos no tempo mais rápido?

    
por macki 22.11.2011 / 18:10

3 respostas

5

Você pode tentar uma variação no dd comando , como:

dd if=small_file bs=4k of=SUM_OF_FILES

dd if=LARGE_FILE bs=4k of=SUM_OF_FILES oflag=append

dd if=LARGER_FILE bs=4k of=SUM_OF_FILES oflag=append
    
por 22.11.2011 / 19:45
1

Encontrei o mmv (Mover em massa e renomear - Mover, copiar, anexar ou vincular Múltiplos arquivos usando padrões de caractere curinga.) de este referência bash útil. Então você poderia fazer:

cp small_file SUM_OF_FILES
mmv -a LARGE_File SUM_OF_FILES
mmv -a LARGER_FILE SUM_OF_FILES

(nota: mmv não está instalado por padrão, use sudo apt-get install mmv )

    
por 22.11.2011 / 18:34
0

Talvez

cat small_file >> LARGE_File

fará o que você quer? Se você precisar de LARGE_FILE para ficar inalterado

cp LARGE_File SUM_OF_FILES
cat small_file >> SUM_OF_FILES

é melhor, mas isso será apenas um pouco mais rápido que o seu código original.

    
por 22.11.2011 / 18:14