Zählerinkrement in der Bash-Schleife funktioniert nicht

Ich habe das folgende einfache Skript, in dem ich eine Schleife ausführe und ein pflegen möchteCOUNTER. Ich kann nicht herausfinden, warum der Zähler nicht aktualisiert wird. Liegt es daran, dass eine Subshell erstellt wird? Wie kann ich das möglicherweise beheben?

<code>#!/bin/bash

WFY_PATH=/var/log/nginx
WFY_FILE=error.log
COUNTER=0
grep 'GET /log_' $WFY_PATH/$WFY_FILE | grep 'upstream timed out' | awk -F ', ' '{print $2,$4,$0}' | awk '{print "http://domain.com"$5"&ip="$2"&date="$7"&time="$8"&end=1"}' | awk -F '&end=1' '{print $1"&end=1"}' |
(
while read WFY_URL
do
    echo $WFY_URL #Some more action
    COUNTER=$((COUNTER+1))
done
)

echo $COUNTER # output = 0
</code>

Antworten auf die Frage(10)

Ihre Antwort auf die Frage