![]() |
|
|
google unix.com
|
|||||||
| Fóruns | Registar | Fórum Regimento | Ligações | Álbuns | FAQ | Lista deputados | Calendário | Pesquisa | Today's Posts | Mark Forums Read |
| Programação Shell Script e Post perguntas sobre ksh, CSH, SH, BASH, Perl, PHP, SED, Awk e outros scripts shell e shell scripts línguas aqui. |
Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
|
||||
| Fio | Thread Starter | Fórum | Respostas | Última postagem |
| total de comparar a estrutura dos directórios e obter todos os tamanhos de f em dois servidores diferentes | mannam Srinivas | Programação Shell Script e | 3 | 04-07-2008 05:21 |
| Script para verificar a necessidade arquivo existe e comparar | rbknisely | UNIX para Dummies Perguntas & Respostas | 1 | 01-16-2008 01:08 |
| Como comparar as datas em shell script | vaji | Programação Shell Script e | 9 | 02-28-2007 12:34 |
| shell script cant reconhecer se comparar mais | jaseloh | Programação Shell Script e | 6 | 12-06-2005 11:34 |
| script para comparar arquivos | pulse2india | Programação Shell Script e | 0 | 10-19-2005 05:32 |
![]() |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Directory comparar script
Olá,
Estou procurando um script, ou ponteiro para uma abordagem para a criação de um script, que irá comparar duas versões de um código de saída e uma terceira estrutura diretório contendo apenas os arquivos que diferem entre os dois. Eu uso diff, muitas vezes, mas ele só vai criar ficheiros patch (AFAIK). Alguém tem alguma sugestão? Obrigado, Jim |
|
||||
|
Você pode usar md5 ou cksum para obter um checksum para cada arquivo. Supondo que você tem idêntico filename, cada diretório tem o mesmo número de arquivos em ambos os diretórios e os diretórios são:
/ path/to/source/dir1 e / path/to/source/dir2 tente algo como isto (não testado) Código:
#!/bin/ksh
cd /path/to/source
mkdir ./both/dir1
mkdir ./both/dir2
cd .dir1
find . -type f | \
while read file1
do
cksum $file1 | read ck1 dummy dummy1
file2=../dir2/"$file"
cksum $file2 | read ck2 dummy dummy1
if [[ "$ck1" != "$ck2" ]] ; then
cp $file1 ../both/dir1/$file1
$( cd /path/to/source/dir2 ; cp $file1 ../both/dir2/$file1)
fi
done
|
|
||||
|
Você terá que lidar com oddballs seu próprio caminho. Se dir1 e dir2 tinha file13.c não teve ter file13.c, eu diria que é uma discrepâncias, então file13.c fica transferido para a pilha discrepâncias.
Se existem diferentes árvores envolvido terá que encontrar uma maneira para que ambos os conjuntos de árvores sob / both/dir1 & / both/dir2 |
![]() |
| Marcadores |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|