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>