descomprimir la carpeta parcial del archivo tar desde la URL

descomprimir la carpeta parcial del archivo tar desde la URL

Tengo una URL que conduce a un archivo tar de gran tamaño, alrededor de 200 GB, necesito extraer una carpeta de ese archivo en mi sistema Linux. Debido al gran tamaño del archivo, no quiero descargar el archivo completo a mi sistema Linux. Además, no tengo acceso shh al sistema fuente.

¿Hay alguna forma de extraer sólo una pequeña parte del archivo tar.gz?

Respuesta1

Para extraer solo un directorio en particular, necesita saber los nombres de archivo exactos. Los comodines no funcionan con tar. y el comando se verá así

curl -s -o - <URL>|tar xz /path/file1 /path/file2  ...

Respuesta2

El tarformato no permite direccionar un archivo (o un directorio) directamente; esto se debe al hecho de quetmonoArkansasLas cebolletas fueron diseñadas para ser leídas secuencialmente desde un medio de respaldo.

Por supuesto, lo que puede hacer es detener el proceso después de que se hayan extraído las piezas relevantes. Harías algo parecido a

curl -o - 'http://your/url' | tar -xvz your_filter

Esto descargará el archivo desde el principio y extraerá las partes relevantes, una vez que tengas todo lo que necesitas, puedes detener el proceso para evitar descargar el resto.

Dependiendo del tipo de acceso que tengas al servidor de origen, es posible que incluso lo hagas mejor: ¿tienes PHP sin modo de guardar? En caso afirmativo, puede extraer lo que necesita a través de shell_execy amigos.

información relacionada