Hallo,
ich habe folgendes Problem. Ich habe ein Array, das ich mit Dateinamen befülle, aber sobald ich das Array später auslesen will ist es leer? Wenn ich das Array unmittelbar nachdem ich es befüllt habe auslese, funktioniert es. Das heißt, dass der Gültigkeitsbereich offensichtlich nicht so weit reicht, aber wie kann ich das Problem lösen?
Code:#!/bin/bash export SOURCEDIR=. COUNTER=0 for FILE in $(ls ${SOURCEDIR}); do cat ${FILE} | \ while read LINE; do if [[ ${LINE} =~ "#[0-9]{1,4}" ]]; then echo ${LINE} | awk '{print $1 $4}' >> ${FILE}_match.tmp fi done if [ -f ${FILE}_match.tmp ]; then FILEARRAY[${COUNTER}]=${FILE}_match.tmp #Hier wird der Filename eingelesen let COUNTER=COUNTER+1 fi done #Gebe ich hier das Array aus, ist es leer? for ((I=0;I<COUNTER;I++)) do echo ${FILEARRAY[${COUNTER}]} done
Lesezeichen