Ferramenta Unix para dividir arquivos

2

Estou despejando um repositório svn em um disco gigante USB formatado em FAT devido à necessidade (trate isso como imutável).

Ele fica preso quando você tenta criar um arquivo com mais de 4 GB.

Eu preciso de uma ferramenta que eu possa canalizar dados para isso criará arquivos de tamanho arbitrário que, quando juntos, serão o arquivo original. Eu posso escrever uma ferramenta para fazer isso, mas se já existir, prefiro usá-la.

Felicidades

EDIT: Uma segunda olhada na página de manual dividida parece que pode funcionar.

    
por richo 29.03.2010 / 05:22

1 resposta

8

Os despejos de SVN são um arquivo gigantesco, e o FAT fica atrás de 4 GB.

split é uma ferramenta unix que insere entradas em uma série de arquivos. Na página de manual :

NAME
       split - split a file into pieces

SYNOPSIS
       split [OPTION]... [INPUT [PREFIX]]

DESCRIPTION
       Output  fixed-size  pieces of INPUT to PREFIXaa, PREFIXab, ...; default
       size is 1000 lines, and default PREFIX is 'x'.  With no INPUT, or  when
       INPUT is -, read standard input.

Algo como svnadmin dump $reponame | split -d -b 1073741824 "$reponame." -d dará a você $ reponame.1, $ reponame.2 e assim por diante, com um arquivo gigabyte cada. Espero que o FAT continue a funcionar com vários arquivos grandes.

Para reuni-los novamente, use cat: cat $reponame.* | svnadmin load $reponame"

    
por 29.03.2010 / 06:05

Tags