Comprimir en directorio diferente.

Imagen de a343
0 puntos

Hola,

Estoy intentando untilizar tar, con sus distintas opciones para compirimir en un directorio diferente al que me encuentro.
Se que es con la opcion -C, pero no soy capaz de utilizarlo correctamente.
Lo he probado de varias maneras y nada, sin embargo para descomprimir si que funciona sin problemas. Lo hice asi para descomprimir:

tar -xzf nombre.tgz -C dir

¿alguien me puede ayudar?

Imagen de selerto
+1
0
-1

Hola amigo.

Para crear el tar en otro directorio, indica la ruta.

Por ejemplo:

tar cvf ~/Imágenes/fondos.tar -C ~/Escritorio/ fondos/
+1
0
-1
Imagen de EnriqueK
+1
0
-1

Supongamos que queremos crear un tar.gz de la carpeta /etc/apt en /home o sea dentro de home , pero fuera de la carpeta de usuario, se presentan dos situaciones
1.- En esta, el respaldo creará además todo el encadenamiento de carpetas y sub-carpetas hasta el elemento a respaldar y sería de la siguiente manera
cd /home
sudo tar -czvf aapt.tar.gz /etc/apt
También podemos ponerlo en una sola linea usando && con lo que va a quedar así
cd /home && sudo tar -czvf aapt.tar.gz /etc/apt
2.- La otra situación es crear el respaldo sin referencias de la ruta que lo contiene, para eso primero debemos crear en su carpeta contenedora y luego moverñp a la carpeta definitiva, para el caso del ejemplo sería
cd /etc && sudo tar -zcvf aapt.tar.gz apt && sudo mv aapt.tar.gz /home
Opino que el primer caso es el mas apropiado para fines de respaldos ya que la restauración queda definida, para el ejemplo en caso de tener un problema con la carpeta /etc/apt, hacemos
sudo rm -Rf /etc/apt
cd /home
sudo tar -zxvf aapt.tar.gz --directory /
para el segundo caso tenemos que introducir manualmente la ruta en donde queremos restaurar, para este caso los dos primeros comandos son iguales y en el tercero debemos poner
sudo tar -zxvf aapt.tar.gz --directory /etc

+1
0
-1
Imagen de a343
+1
0
-1

Hola,

EnriqueK eso no me vale, tiene que ser con los comandos de tar, solo me vale lo ultimo que me dijiste, pero para descomprimir ya lo tengo averiguado, estoy preguntando para comprimir.

selerto, lo que me dices no funciona, ¿donde pones el archivo que quieres comprimir? En tu linea solo indicas el nombre del nuevo archivo y el directorio destino.
Yo intente hacer lo siguiente:

tar -cvzf arhivo.txt archivo.tgz -C ~/Escritorio/Carpeta

Y este es el resultado:

tar: archivo.txt: No se puede stat: No existe el archivo o el directorio
tar: Saliendo con fallos debido a errores anteriores

+1
0
-1
Imagen de selerto
+1
0
-1

Hola de nuevo.

Lamento que no entendieses el ejemplo que te puse. Ahora en modo 'verbose' :-)

Para crear un archivo comprimido independientemente de donde estés:

tar cvzf ~/Vídeos/comprimeme.tgz -C ~/Escritorio/ comprimeme.txt

Amigo tar
Créame en modo verbose un paquetes comprimido llamado comprimeme.tgz en mi directorio Vídeos
Para saber que tienes que comprimir vete a mi directorio Escritorio y busca un archivo llamado comprimeme.txt

Para descomprimir un archivo independientemente de donde estés:

tar xvf ~/Vídeos/comprimeme.tgz -C ~/Documentos/

Amigo tar
desempaqueta y descomprime el archivo comprimeme.tgz que está en mi directorio Vídeos
Pero ojo, descomprímelo en mi directorio Documentos

Nota: '~' significa '/home/miusuario/'

+1
0
-1
Imagen de a343
+1
0
-1

Losiento, pero a mi me dice lo siguiente el amigo tar :D

tar: Rechazo cobarde a crear un archivo vacío
Intente`tar --help' o `tar --usage' para mayor información.

y hago justo lo que me dijiste

+1
0
-1
Imagen de .doc
+1
0
-1

¿y es tan complicado descomprimir en la carpeta que sea... y luego mover la carpeta de los archivos descomprimidos al directorio que te apetezca?

+1
0
-1
Imagen de a343
+1
0
-1

No es que sea complicao o no, es que tengo que hacerlo asi porque es un trabajo que nos han mandao que lo hagamos así.
Si por mi fuera ni siquiera utilizaria los comandos

+1
0
-1
Imagen de .doc
+1
0
-1

curioso: en los estudios, te hacen descornarte para solucionar un problema 'como te digan que tienes que hacerlo'. Pero en la vida, vale buscar una solución por el camino que te parezca más oportuno... mientras sea correcto, y la alcances.

+1
0
-1
Imagen de a343
+1
0
-1

Bueno, a expensas de que alguien me diga como utilizar el comando de manera correcta lo hare asi, claro esta.

Por cierto, no se si sabra tcl/tk, pero el caso que el objetivo que tengo es crear una interfaz para este comando "tar", y una de las opciones que tengo que poner es la de ver los archivos antes de descomprimirlos, que es la opciones (-t).
Bueno, el caso es que, si hago tar -tf nombre.tgz en el terminal todo anda correcto, pero si luego en el script hago
exec tar -tf $nombre

donde nombre es la variable que contiene el nombre de archivo comprimido, no funciona.

¿Alguna propuesta?
Y no me digas que la interfaz ya esta inventada y que use esa, porque debo crearla yo :D

+1
0
-1
Imagen de rioport
+1
0
-1

Crear una interfaz para tar y no saber su sintaxis, bendito dios!.

+1
0
-1

-- GC --