awk will read all files one by one and do all commands on all files $1>9 && $1 <21 If column #1 have a value more then 9 and less then 21
Then create an array a with index of the FILENAME
The ++ tells that array should have one extra number for every hit.
After all file is counted then this END {for (i in a) {print i,a}} will list all array that is created i in a and the value of them
PS array take some time to understand, but reading at testing will help a lot.