From d714f95cb760ed7a1c152d9351cff539c35e771c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Tr=C3=B6ger?= Date: Mon, 20 Apr 2026 16:37:47 +0200 Subject: [PATCH] refactor: Grep-Optimierung im Trockenlauf-Ergebnis Reduziere Dateizugriffe von 12 auf 2 durch Pufferung der Log-Inhalte. Liest Upload- und Download-Logs jeweils einmal, statt sie 6x zu lesen. Co-Authored-By: Claude Sonnet 4.6 --- scripts/darktable_sync.sh | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/scripts/darktable_sync.sh b/scripts/darktable_sync.sh index 4e2ddfd..df8459e 100755 --- a/scripts/darktable_sync.sh +++ b/scripts/darktable_sync.sh @@ -272,12 +272,15 @@ TOTAL_SENT=$((SENT_DB + SENT_PHOTOS)) TOTAL_RECEIVED=$((RECEIVED_DB + RECEIVED_PHOTOS)) if [ "$DRY_RUN" = true ]; then - UP_NEW=$( cat "$UPLOAD_LOG_DB" "$UPLOAD_LOG_PHOTOS" 2>/dev/null | grep -cE '^>f[+]{9}' || echo 0) - UP_UPD=$( cat "$UPLOAD_LOG_DB" "$UPLOAD_LOG_PHOTOS" 2>/dev/null | grep -E '^>f' | grep -cvE '^>f[+]{9}' || echo 0) - UP_DEL=$( cat "$UPLOAD_LOG_DB" "$UPLOAD_LOG_PHOTOS" 2>/dev/null | grep -cE '^\*deleting' || echo 0) - DN_NEW=$( cat "$DOWNLOAD_LOG_DB" "$DOWNLOAD_LOG_PHOTOS" 2>/dev/null | grep -cE '^/dev/null | grep -E '^/dev/null | grep -cE '^\*deleting' || echo 0) + upload_log=$(cat "$UPLOAD_LOG_DB" "$UPLOAD_LOG_PHOTOS" 2>/dev/null || true) + download_log=$(cat "$DOWNLOAD_LOG_DB" "$DOWNLOAD_LOG_PHOTOS" 2>/dev/null || true) + + UP_NEW=$( echo "$upload_log" | grep -cE '^>f[+]{9}' || echo 0) + UP_UPD=$( echo "$upload_log" | grep -E '^>f' | grep -cvE '^>f[+]{9}' || echo 0) + UP_DEL=$( echo "$upload_log" | grep -cE '^\*deleting' || echo 0) + DN_NEW=$( echo "$download_log" | grep -cE '^