2016-07-21 15 views
1

Ich versuche Verzeichnisse (& Dateien) rekursiv von einem Verzeichnis zum anderen zu kopieren.cp Befehl, um leere Verzeichnisse zu behandeln (was zu Diff Dateigrößen)

Ich habe versucht, die folgenden -

rsync -avz <source> <target> 
cp -ruT <source> <taret> 

Beide waren erfolgreich. aber wenn ich versuche, die Größen mit (du -c) zu vergleichen, scheinen die leeren Verzeichnisse in der Größe nicht übereinzustimmen.

Im Zielverzeichnis

drwxrwxr-x 2 abc devl 4096 Jun 9 01:25 . 
drwxrwxr-x 4 abc devl 4096 Jul 20 07:46 .. 

Im Quellverzeichnis

drwxrwxr-x 2 prod ops 2 Jun 9 01:25 . 
drwxrwxr-x 4 prod ops 36 Jul 20 07:46 .. 

Gibt es eine besondere Art und Weise zu handhaben? diff -qr zeigt jedoch keine Unterschiede.

Danke für Ihre Hilfe.

Antwort

0

Sind beide Ordner auf demselben Volume? Wenn nicht die Wahrscheinlichkeit besteht, dass die Sektorgröße für diese Volumes unterschiedlich ist, unterscheiden sich die Inode-Größen. Im Fall von diff ist es einfach zu sehen, wann das Verzeichnis existiert und ob es die entsprechenden Dateien enthält. Es ist ähnlich, dass diff keine Berechtigungsunterschiede enthält, da diese ziemlich systemspezifisch sein können.

Eine ziemlich umfassende Antwort finden Sie hier: Why size reporting for directories is different than other files?