Como separo arquivos em grupos para processamento agregado?

0

Suponha que eu tenha muitos arquivos em um diretório, e eu preciso concatenar clusters de até 100 arquivos em um novo arquivo.

Como eu poderia fazer isso no bash?

Para o propósito desta questão, vamos supor que eu não precise classificá-los de alguma forma antes de clusterizar

    
por tilacog 14.03.2014 / 16:30

1 resposta

1

Você pode usar find + xargs :

find -maxdepth 1 -type f -print0 | xargs -0 -n100 process.sh

xargs agrupa os arquivos em centenas, find ajuda a entender arquivos com espaço em branco em seus nomes.

Atualizar :

Em process.sh , localize o primeiro nome inexistente e crie o arquivo:

i=0
while [[ -f concatenated-$i ]] ; do (( i++ )) ; done
cat "$@" > concatenated-$i
    
por 14.03.2014 / 16:39

Tags