Мне кажется, что вы хотите вывести строки, где первое поле в списке полей, разделенных запятыми, оканчивается на 'F'
Если вас не волнует список того, из какого файла .gz взяты строки или какой файл в файле gzipped - то есть вы просто хотите, чтобы в списке были строки - вам даже не нужно распаковывать файлы. Сначала файлы gz, так что вам не нужно их повторно архивировать.
zcat file.gz | awk -F, '$1 ~ /F$/'
Для каждого файла в текущем дереве каталогов используйте поиск с xargs. Этот пример ограничивает его только текущим каталогом, но просто пропустите "-maxdepth 1", чтобы получить все дерево каталогов
find . -maxdepth 1 -name \*.gz -print0 | xargs -0 zcat | awk -F, '$1 ~ /F$/'
Это говорит о том, что нужно найти файлы, заканчивающиеся на «.gz» и записать их имена с ограничителем NUL (0 в -print0), канал, который выводится через xargs, который будет выбирать список на основе NUL chacracters (аргумент "-0") и запустите zcat для файлов. Передайте , который выведет через вашу команду awk, и вы получите соответствующие строки.