So ermitteln Sie die Anzahl der mit rsync kopierten Dateien

So ermitteln Sie die Anzahl der mit rsync kopierten Dateien

Ich verwende rsync in einem Skript (unter OSX), um von einem RAID auf zwei Backup-Laufwerke zu kopieren. Das passiert, wenn ich das Skript ausführe, wahrscheinlich 10-20-mal am Tag. Ich versuche, eine Möglichkeit zu finden, die rsync-Protokolldatei oder irgendetwas anderes zu analysieren, um die Anzahl der kopierten Dateien zu ermitteln. Hier ist mein rsync-Befehl:

rsync -auvh --delete --progress "$SourceTx" "$Dest1Tx" --log file="$SourceRoot/""CopyLog1.txt"

und mein Versuch (funktioniert nicht), die Protokolldatei zu durchsuchen, um die Anzahl der kopierten Dateien zu ermitteln:

cd "$SourceRoot/"
howMany=$(cat CopyLog1.txt | grep -c .mov)
osascript -e 'display notification "Transcode Copy Complete, '$howMany' files transfered, Log Files Created" with title "Transcode Copy Script"'

Antwort1

Um die Anzahl der übertragenen Dateien abzurufen, verwenden Sie die --statsOption. Beispiel:

$ rsync -auvh --stats --delete --log-file=1.log --progress "$SourceTx" "$Dest1Tx" | grep 'files transferred'
Number of regular files transferred: 21

So erfassen Sie die Anzahl der in eine Shell-Variable übertragenen Dateien:

nfiles=$(rsync -auvh --stats --delete --log-file=1.log --progress "$SourceTx" "$Dest1Tx" | awk '/files transferred/{print $NF}')

Das Obige wurde gefiltert, um nur die Anzahl der übertragenen Dateien anzuzeigen. Um die anderen verfügbaren Informationen zu veranschaulichen --stats:

$ rsync -auh --stats --delete  srcdir destdir

Number of files: 14 (reg: 10, dir: 4)
Number of created files: 0
Number of deleted files: 0
Number of regular files transferred: 0
Total file size: 209 bytes
Total transferred file size: 0 bytes
Literal data: 0 bytes
Matched data: 0 bytes
File list size: 0
File list generation time: 0.001 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 342
Total bytes received: 27

sent 342 bytes  received 27 bytes  738.00 bytes/sec
total size is 209  speedup is 0.57

verwandte Informationen