Supongamos que tiene un tarball llamado lotsofdata.tar.gzy solo sabe que hay un archivo allí que desea, pero todo lo que puede recordar es que su nombre contiene la palabra contract. Tienes dos opciones:
Use tary greppara enumerar el contenido de su tarball para que pueda encontrar la ruta completa y el nombre de cualquier archivo que coincida con la parte que conoce, y luego use tarpara extraer ese archivo ahora que conoce sus detalles exactos, o puede usar dos los conmutadores poco conocidos simplemente extraen todos los archivos que coinciden con lo poco que sabe del nombre de su archivo; no necesita saber el nombre completo ni ninguna parte de su ruta para esta opción. Los detalles son:
Opción 1
$ tar -tzf lotsofdata.tar.gz | grep contract
Esto enumerará los detalles de todos los archivos cuyos nombres contienen su parte conocida. Luego extrae lo que quiere usando:
$ tar -xzf lotsofdata.tar.gz <full path and filename from your list above>
Es posible que necesite ./frente a su camino para que funcione.
opcion 2
$ tar -xzf lotsofdata.tar.gz --wildcards --no-anchored '*contract*'
Depende de usted lo que encuentre más fácil o más útil.