diff recursivo com pré-processamento por arquivo

2

Como obtenho um efeito combinado de diff -r left_dir right_dir e diff <(cat left_file | myfilter) <(cat right_file | myfilter) sem muitos scripts?

    
por bobah 29.07.2013 / 11:28

1 resposta

2

Se os seus nomes de arquivo são simples (sem espaço em branco, etc.), você pode usar

left_dir=...
right_dir=...
find $left_dir -type f | while read left ; do
    relpath=${left#$left_dir}
    diff <(myfilter $left) <(myfilter $right_dir$relpath)
done

Se isso já é "muito script" e ainda há problemas (espaço em branco em nomes de arquivos, arquivos não existentes em um lado, etc.), provavelmente você está sem sorte.

    
por 29.07.2013 / 11:40

Tags