Ответы:
Да, используйте для этого gzip. Лучший способ - прочитать данные как входные и перенаправить сжатый в выходной файл, т.е.
cat test.csv | gzip > test.csv.gz
cat test.csv
отправит данные как стандартный вывод, а использование gzip со знаком трубы будет читать эти данные как стандартный ввод. Обязательно перенаправьте вывод gzip в какой-либо файл, поскольку сжатые данные не будут записаны в терминал.
xz
:mysqldump mydb | xz > dbdump.sql.xz
-9
, уровень сжатия по умолчанию -6
.