Portál AbcLinuxu, 16. prosince 2025 20:27
#!/usr/bin/env python
import os, shutil
def copydiff(ls1, ls2):
soubory = [x for x in ls1 if x not in ls2]
for soubor in soubory:
print soubor
shutil.copy(soubor, os.path.join('tmp3', soubor))
ls1 = os.listdir('tmp1')
ls2 = os.listdir('tmp2')
copydiff(ls1, ls2)
copydiff(ls2, ls1)
ale raději to nespouštěj
OLD=/tmp/zmena/old
NEW=/tmp/zmena/new
DIF=/tmp/zmena/dif
rm -r $DIF/*
(cd $NEW;find . -type f)|while read fn; do
if [ ! -f "$OLD/$fn" ] || ! cmp -s "$OLD/$fn" "$NEW/$fn"; then
mkdir -p "`dirname "$DIF/$fn"`"
cp -v "$NEW/$fn" "$DIF/$fn"
fi
done
Rozumím tomu tak, že máš někde adresář původní, adresář po změně a někam chceš zkopírovat změněné a přidané soubory. Pak by to mohlo být ono.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.