diff --git a/rclone-backup.sh b/rclone-backup.sh index 95dd629..bdb2c53 100755 --- a/rclone-backup.sh +++ b/rclone-backup.sh @@ -30,7 +30,17 @@ SYNC_ERROR=$(rclone sync "$SOURCE" "$REMOTE" \ -q 2>&1) if [ -n "$SYNC_ERROR" ]; then - echo "[SYNC ERROR] $SYNC_ERROR" >> "$LOG_FILE" + COUNT_ERROR=$(echo "$SYNC_ERROR" | wc -l) + if [ "$COUNT_ERROR" -gt 15 ]; then + TOP=3 + BOTTOM=3 + SYNC_ERROR_TRUNCATED=$(echo "$SYNC_ERROR" | head -n $TOP) + SKIPPED=$(($COUNT_ERROR - $TOP - $BOTTOM)) + SYNC_ERROR_TRUNCATED="$SYNC_ERROR_TRUNCATED +... skipped $SKIPPED lines ... +$(echo "$SYNC_ERROR" | tail -n $BOTTOM)" + SYNC_ERROR="$SYNC_ERROR_TRUNCATED" + fi fi CHECK_OUT=$(rclone check "$SOURCE" "$REMOTE" \