Почему я получаю неожиданный конец файла в моем скрипте при использовании gzip?

У меня есть одно сомнение в этом:

for i in ./*.gz do gunzip -c $i | head -8000 | gzip > $(basename $i) done 

Я получаю ошибку «неожиданный конец файла» для gzip, и я не получаю 8000 вообще, всего несколько десятков строк. Я проверил целостность моих файлов, и они в порядке. Любопытно, если я запускаю отдельные файлы:

 gunzip -c file1.gz | head -8000 | gzip > file1.gz 

Я получаю ожидаемый результат. С помощью этого сценария я могу получить первые 8000 строк из сжатого файла с линиями 10708712 и снова сжать. Новый файл перезаписывает исходный файл, но все в порядке.

Linux и Unix - лучшая ОС в мире.