Respostas:
Use "--filter":
split --bytes=1024M --filter='gzip > $FILE.gz' /path/to/input /path/to/output
Um one-liner usando um condicional é o mais próximo possível.
cd /path/to/output && split --bytes=1024M /path/to/input/filename && gzip x*
gzipsó será executado se splitfor bem-sucedido por causa da condicional &&que também está entre cde também splitpara garantir que cdseja bem-sucedido. Observe que splite gzipgera para o diretório atual em vez de ter a capacidade de especificar o diretório de saída. Você pode criar o diretório, se necessário:
mkdir -p /path/to/output && cd /path/to/output && split --bytes=1024M /path/to/input/filename && gzip x*
Para juntar tudo novamente:
gunzip /path/to/files/x* && cat /path/to/files/x* > /path/to/dest/filename
--line-bytes=1024M.