Qualquer maneira de sincronizar arquivos de dois diretórios pai, quando sua estrutura interna é diferente?

2

Digamos que temos dois diretórios:

Diretório A:

aaa.mov
bbb.mov
ccc.mov
ddd.mov
eee.mov

Diretório B:

subdir1/aaa.mov
subdir1/bbb.mov
subdir2/subsubdir/ccc.mov

Como eu poderia transferir de A para B / newDir, todos os arquivos que não existem nos subdiretórios de um B (ddd.mov & eee.mov)?

    
por nuc 27.02.2011 / 10:59

1 resposta

3

Um script de shell simples vai conseguir o que você quer ...

#!/bin/sh

SRCDIR=dira
DSTDIR=dirb
SRCFILES='find ${SRCDIR} -type f -exec basename '{}' \;'
mkdir -p ${DSTDIR}/NewDir

for FILE in ${SRCFILES}
do
        FOUND='find ${DSTDIR} -name ${FILE} -type f'
        if [ -z ${FOUND} ]
        then
                echo -n "Copying ${FILE}..."
                cp ${SRCDIR}/${FILE} ${DSTDIR}/NewDir
                echo "done"
        fi
done
    
por 27.02.2011 / 11:11

Tags