#!/bin/bash

for file in {1,2,3,4,5}.err; do
  {
  	echo "IDK $RANDOM"
  	echo "CSQ $RANDOM"
  	echo "EDC $RANDOM"
  } > "/tmp/$file"
done

VALUES=()
while read -r LINE; do
  VALUES+=( "$( echo "$LINE" | sed 's/.*CSQ //')" )
  declare -p VALUES
done < <(grep CSQ /tmp/*.err)

echo "Final (popen): "
declare -p VALUES

echo

VALUES=()
grep CSQ /tmp/*.err | while read -r LINE; do
  VALUES+=( ${LINE#*CSQ } )
  declare -p VALUES
done

echo "Final (pipe): "
declare -p VALUES