Desde man gzip
puedes leer eso gzip
los archivos ped simplemente se pueden concatenar:
USO AVANZADO Se pueden concatenar varios archivos comprimidos. En este caso, gunzip extraerá todos los miembros a la vez. Por ejemplo:
gzip -c file1 > foo.gz
gzip -c file2 >> foo.gz
Then
gunzip -c foo
is equivalent to
cat file1 file2
Esto también se puede hacer usando cat
para el gzip
archivos ped, por ejemplo:
seq 1 4 > A && gzip A
echo 5 > B && gzip B
#now 1 to 4 is in A.gz and 5 in B.gz, we want 1 to 5 in C.gz:
cat A.gz B.gz > C.gz && zcat C.gz
1
2
3
4
5
#or for appending B.gz to A.gz:
cat B.gz >> A.gz
Para hacerlo sin un archivo externo para agregar su línea, haga lo siguiente:
echo "this is the new line" | gzip - | cat - >> original_file.gz
¿Qué tan grande es su mesa de empleados? A menos que tenga un millón de empleados y cada registro ocupe miles de bytes, probablemente ni siquiera valga la pena molestarse en comprimir la salida.
Es casi seguro que no vale la pena molestarse en comprimirlo mientras se crea el archivo de salida, entonces, ¿por qué no solo generar texto sin comprimir? Ejecute count=$(wc -l out1) ; echo "T$count" >> out1
y luego comprimirlo con gzip out1
?
alternativamente, simplemente ejecute alguna variación de select count(*) from employee
antes del spool off
comando.
Estaba luchando con un desafío similar:agregar algunas líneas a un volcado de sql comprimido. Mi solución se basó en la respuesta de @Fiximan
echo 'append this string' | gzip >> out.gz