Я бы сделал это немного по-другому. Сначала выполните команду db2 LIST DB DIRECTORY
и сохраните ее вывод в текстовый файл. Таким образом, вам не придется выполнять ее несколько раз. Затем для каждого имени цели передайте имя awk-сценарию, который соберет соответствующие строки:
## Run the db command
tempfile=$(mktemp)
db2 LIST DB DIRECTORY > "$tmpfile"
## I am assuming you will have a loop for the different target names
for name in OLTPF OLTPA; do
awk -v name="$name" '{
if(/Database alias/){n=$4; a[n]=$0; i=1}
if (i<=6 && i>1){ a[n]=a[n]"\n"$0}
i++;
}END{if(name in a){print a[name]}}' $tempfile
done