Androide

Comando tar en linux (crear y extraer archivos)

Curso de GNU/Linux – 30. Comprimir/descomprimir archivos .tar

Curso de GNU/Linux – 30. Comprimir/descomprimir archivos .tar

Tabla de contenido:

Anonim

El comando tar se usa para crear archivos tar convirtiendo un grupo de archivos en un archivo. También tiene la capacidad de extraer archivos tar, mostrar una lista de los archivos incluidos en el archivo, agregar archivos adicionales a un archivo existente, así como varios otros tipos de operaciones.

Tar fue originalmente diseñado para crear archivos para almacenar archivos en cinta magnética, por eso tiene su nombre " T ape AR chive".

En este tutorial, le mostraremos cómo usar el comando tar para extraer, enumerar y crear archivos tar a través de ejemplos prácticos y explicaciones detalladas de las opciones tar más comunes.

Sintaxis del comando Tar

Hay dos versiones de tar, BSD tar y GNU tar con algunas diferencias funcionales entre ellas. La mayoría de los sistemas Linux vienen con GNU tar preinstalado por defecto.

La sintaxis general para el comando tar es la siguiente:

tar

  • OPERATION : solo se permite y requiere un argumento de operación. Las operaciones más utilizadas son:
    • --create ( -c ) - Crea un nuevo archivo tar. --extract ( -x ): extrae todo el archivo o uno o más archivos de un archivo. --list ( -t ): muestra una lista de los archivos incluidos en el archivo
    OPTIONS - Las operaciones más utilizadas son:
    • --verbose ( -v ): muestra los archivos que procesa el comando tar. --file=archive=name ( -f archive-name ): especifica el nombre del archivo comprimido.
    ARCHIVE_NAME : el nombre del archivo. FILE_NAME(s) : una lista de nombres de archivos separados por espacios que se extraerán del archivo. Si no se proporciona, se extrae todo el archivo.

Al ejecutar comandos tar, puede usar la forma larga o corta de las operaciones y opciones tar . Las formas largas son más legibles, mientras que las formas cortas son más rápidas de escribir. Las opciones de formato largo tienen como prefijo un guión doble ( -- ). Las opciones de formato corto tienen como prefijo un solo guión ( - ) que se puede omitir.

Creando Archivo Tar

Tar admite una amplia gama de programas de compresión como gzip , bzip2 , lzip , lzma , lzop , xz y compress . Al crear archivos comprimidos de alquitrán, es una convención aceptada agregar el sufijo del compresor al nombre del archivo comprimido. Por ejemplo, si un archivo comprimido ha sido comprimido con gzip , debería llamarse archive.tar.gz.

Para crear un archivo tar, use la opción -c seguido de -f y el nombre del archivo.

Por ejemplo, para crear un archivo llamado archive.tar partir de los archivos llamados file1 , file2 , file3 , debe ejecutar el siguiente comando:

tar -cf archive.tar file1 file2 file3

Aquí está el comando equivalente usando las opciones de formato largo:

tar --create --file=archive.tar file1 file2 file3

Puede crear archivos a partir del contenido de uno o más directorios o archivos. Por defecto, los directorios se archivan recursivamente a menos que se --no-recursion opción --no-recursion .

El siguiente ejemplo creará un archivo denominado user_backup.tar del directorio /home/user :

tar -cf backup.tar /home/user

Use la opción -v si desea ver los archivos que se están procesando.

Crear archivo Tar Gz

Gzip es el algoritmo más popular para comprimir archivos tar. Al comprimir archivos tar con gzip, el nombre del archivo debe terminar con tar.gz o tgz .

La opción -z le dice a tar que comprima el archivo usando el algoritmo gzip medida que se crea. Por ejemplo, para crear un archivo tar.gz a partir de archivos dados, usaría el siguiente comando:

tar -czf archive.tar.gz file1 file2

Creando Archivo Tar Bz2

Otro algoritmo popular para comprimir archivos tar es bzip2. Al comprimir archivos tar con bzip2, el nombre del archivo debe terminar con tbz o tbz .

Cuando se especifica la opción -j , tar utilizará el algoritmo bzip2 para comprimir el archivo. El siguiente comando creará un archivo tar.bz2 partir de los archivos dados:

tar -cjf archive.tar.bz2 file1 file2

Listado de archivos Tar

Cuando se usa con la opción --list ( -t ), el comando tar listará el contenido de un archivo tar sin extraerlo. El siguiente comando enumerará el contenido del archivo archive.tar :

tar -tf archive.tar La salida enumerará los nombres de todos los archivos en el archivo:

file1 file2 file3

Para obtener más información, como el propietario del archivo, el tamaño del archivo, la marca de tiempo, use la opción --verbose ( -v ):

tar -tvf archive.tar

-rw-r--r-- linuxize/users 0 2018-09-08 01:19 file1 -rw-r--r-- linuxize/users 0 2018-09-08 01:19 file2 -rw-r--r-- linuxize/users 0 2018-09-08 01:19 file3

Extraer archivo de alquitrán

La mayoría de los archivos archivados en Linux se archivan y comprimen usando un formato tar o tar.gz. Saber cómo extraer estos archivos de la línea de comandos es importante.

Para extraer un archivo tar, use la opción --extract ( -x ) seguida del nombre del archivo:

tar -xf archive.tar

También es común agregar la opción -v para imprimir los nombres de los archivos que se extraen.

tar -xvf archive.tar

Extraer el archivo Tar en un directorio diferente

Por defecto, tar extraerá el contenido del archivo en el directorio de trabajo actual. Use --directory ( -C ) para extraer archivos de almacenamiento en un directorio específico:

Por ejemplo, para extraer el contenido del archivo al directorio /opt/files , puede usar:

tar -xf archive.tar -C /opt/files

Extracción de archivos Tar Gz y Tar Bz2

Al extraer archivos comprimidos como tar.gz o tar.bz2 no tiene que especificar una opción de descompresión. El comando es el mismo que cuando se extrae el archivo tar :

tar -xf archive.tar.gz

tar -xf archive.tar.bz2

Extraer archivos específicos de un archivo Tar

A veces, en lugar de extraer todo el archivo, es posible que necesite extraer solo unos pocos archivos.

Para extraer un archivo o archivos específicos de un archivo tar, agregue una lista de nombres de archivos separados por espacios para extraer después del nombre del archivo:

tar -xf archive.tar file1 file2

Al extraer archivos, debe proporcionar sus nombres exactos, incluida la ruta, tal como se imprime con --list ( -t ).

Extraer uno o más directorios de un archivo es lo mismo que extraer archivos:

tar -xf archive.tar dir1 dir2

tar -xf archive.tar README

tar: README: Not found in archive tar: Exiting with failure status due to previous errors

Extraer archivos de un archivo Tar utilizando comodines

Para extraer archivos de un archivo basado en un patrón comodín, use el --wildcards y cite el patrón para evitar que el shell lo interprete.

Por ejemplo, para extraer archivos cuyos nombres terminan en .js (archivos Javascript), puede usar:

tar -xf archive.tar --wildcards '*.js'

Agregar archivos al archivo Tar existente

Para agregar archivos o directorios a un archivo tar existente, use la operación --append ( -r ).

Por ejemplo, para agregar un archivo llamado newfile a archive.tar, debería ejecutar:

tar -rvf archive.tar newfile

Eliminar archivos de un archivo Tar

Use la operación --delete para eliminar archivos de un archivo.

El siguiente ejemplo muestra cómo eliminar el archivo file1 de archive.tar,:

tar --delete -f archive.tar file1

Conclusión

Los usos más comunes del comando tar son crear y extraer un archivo tar. Al extraer un archivo, use el comando tar -xf seguido del nombre del archivo y para crear uno nuevo, use tar -czf seguido del nombre del archivo y los archivos y directorios que desea agregar al archivo.

Para obtener más información sobre el comando tar, consulte la página de documentación de tar de Gnu.

terminal de alquitrán