Вы можете сделать что-то вроде:
find /log -name '*.1' -type f -exec sh -c '
for file do
gzip "$file" && mv -i "$file.gz" "${file%.*}.gz"
done' sh {} +
Мы используем gzip file && mv -i file.gz newfile
вместо gzip < file > newfile && rm -f file
, чтобы извлечь выгоду из способности gzip
сохранять некоторые метаданные в сжатом файле и для лучшей способности mv -i
справляться с конфликтами.