Teljesen jól megoldottad egyedül. Annyi, hogy a $(cat blabla) résznél a cat után több fájlt is fel lehet sorolni, pl. $(cat fájlok.txt mappák.txt adattáblák.txt), a cat pont arra való, hogy többféle adatot, fájlt úgy tud összeömleszteni, összefűzni, mintha csak egy fájl, egy adatfolyam lenne.
Annyi, hogy én a tgz helyett zstd használatát ajánlom, lehetőleg több szálon, irgalmatlanul gyors, állva hagyja a gzip-et és a többi megoldást, és kicsivel jobban is tömörít. Pl.:
tar -I "zstd -T0 -1" -cvf blabla.tar.zst $(cat fájllista)
A -I (nagy i) azt adja meg a tar-nak, hogy külső tömörítőt használjon, a -T0 azt, hogy az összes elérhető prociszálat használja, a -1 a tömörítési fok (1 és 19 között), ezzel játszhatsz, hogy mennyire akarod a mentést betömöríteni. Ahogy meglátod, hogy mennyivel gyorsabb, mint a gzip, le fogsz menni hídba, azt garantálom. Szóba jönne még az lz4 is, de az csak egy szálon gyorsabb, több szálat még nem támogat, és rosszabbul is tömörít, mint a gzip.