Das hängt davon ab wie der Server die Daten schickt.
netcat hängt zudem solange die Verbindung offen bleibt, und liest dabei auch noch Input von stdin.
# Server
nc -N -p 1234 -l < ausgabe.txt
# Client
nc -d server 1234 | gzip > ausgabe.txt.gz
So kann das funktionieren, aber wenn der Server die Verbindung nicht zu macht, dann kann es halt auch nicht funktionieren.
Ansonsten hast du mit jeder | Pipe und mit gzip selber noch den Effekt, daß hier Daten erstmal gebuffert werden, wenn also dein Stream sehr langsam hereintröpfelt, kann es sein daß du erst was in der Datei siehst, wenn schon entsprechend viel reingekommen ist. Da siehst du die Daten also nicht in Echtzeit wie das im Terminal der Fall ist.
Das kannst du ein wenig mit stdbuf beeinflussen (dann bekommt gzip die Daten sofort) aber was gzip damit macht ist dann wieder gzip überlassen.
Du könntest ggf. mit tee arbeiten, um die Daten gleichzeitig in ein gzip und aufs Terminal zu schreiben.