GNU/Linux >> Tutoriales Linux >  >> Linux

Comando Tar en Linux (Crear y Extraer Archivos)

El tar El comando crea archivos tar al convertir un grupo de archivos en un archivo. También puede extraer archivos tar, mostrar una lista de los archivos incluidos en el archivo, agregar archivos adicionales a un archivo existente y varios otros tipos de operaciones.

Tar se diseñó originalmente para crear archivos para almacenar archivos en cinta magnética, por lo que tiene su nombre "T simio AR cebollino”.

Este artículo muestra cómo usar el tar comando para extraer, enumerar y crear archivos tar a través de ejemplos prácticos y explicaciones detalladas de las opciones tar más comunes.

tar Sintaxis del comando #

Hay dos versiones de tar, BSD tar y GNU tar, con algunas diferencias funcionales. La mayoría de los sistemas Linux vienen con GNU tar preinstalado de forma predeterminada.

La sintaxis general para tar El comando es el siguiente:

tar [OPERATION_AND_OPTIONS] [ARCHIVE_NAME] [FILE_NAME(s)]
  • OPERATION - Solo se permite y requiere un argumento de operación. Las operaciones más utilizadas son:
    • --create (-c ) - Crear un nuevo archivo tar.
    • --extract (-x ) - Extraiga el archivo completo o uno o más archivos de un archivo.
    • --list (-t ) - Mostrar una lista de los archivos incluidos en el archivo
  • OPTIONS - Las operaciones más utilizadas son:
    • --verbose (-v ) - Muestra los archivos procesados ​​por el comando tar.
    • --file=archive=name (-f archive-name ) - Especifica el nombre del archivo de almacenamiento.
  • ARCHIVE_NAME - El nombre del archivo.
  • FILE_NAME(s) - Una lista separada por espacios de nombres de archivos 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 tar operaciones y opciones. Los formularios largos son más legibles, mientras que los formularios cortos son más rápidos de escribir. Las opciones de formato largo tienen el prefijo de un guión doble (-- ). Las opciones abreviadas 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 tar comprimidos, es una convención aceptada agregar el sufijo del compresor al nombre del archivo comprimido. Por ejemplo, si un archivo ha sido comprimido con gzip , debería llamarse archive.tar.gz.

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

Por ejemplo, para crear un archivo llamado archive.tar de los archivos llamados file1 , file2 , file3 , ejecutaría 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. De forma predeterminada, los directorios se archivan recursivamente a menos que --no-recursion se especifica la opción.

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

tar -cf backup.tar /home/user

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

Creación de 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 .

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

tar -czf archive.tar.gz file1 file2

Creación de archivo Tar Bz2 #

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

Para comprimir el archivo con bzip2 algoritmo, invoque tar con el -j opción. El siguiente comando crea un tar.bz2 archivo de los archivos dados:

tar -cjf archive.tar.bz2 file1 file2

Listado de archivos tar #

Cuando se usa con --list (-t ), la opción tar El comando enumera el contenido de un archivo tar sin extraerlo.

El siguiente comando enumerará el contenido del archive.tar archivo:

tar -tf archive.tar
file1file2file3

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

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

Extracción del archivo Tar #

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

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

tar -xf archive.tar

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

tar -xvf archive.tar

Extracción de archivo Tar en un directorio diferente #

De forma predeterminada, tar extraerá el contenido del archivo en el directorio de trabajo actual. Usa el --directory (-C ) para extraer archivos de almacenamiento en un directorio específico:

Por ejemplo, para extraer el contenido del archivo a /opt/files directorio, 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 es necesario que especifique una opción de descompresión. El comando es el mismo que al extraer tar archivo:

tar -xf archive.tar.gz
tar -xf archive.tar.bz2

Extracción de archivos específicos de un archivo Tar #

A veces, en lugar de extraer todo el archivo, es posible que deba extraer solo algunos archivos.

Para extraer archivos específicos de un archivo tar, agregue una lista de nombres de archivos separados por espacios para extraerlos 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 muestra en --list (-t ).

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

tar -xf archive.tar dir1 dir2

Si intenta extraer un archivo que no existe, aparecerá un mensaje de error similar al siguiente:

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

Extracción de archivos de un archivo Tar usando comodín #

Para extraer archivos de un archivo basado en un patrón de comodines, use --wildcards cambiar y citar 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 --append (-r ) operación.

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

tar -rvf archive.tar newfile

Eliminar archivos de un archivo Tar #

Usa el --delete operación para eliminar archivos de un archivo.

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

tar --delete -f archive.tar file1

Conclusión #

Los usos más comunes del tar comando son para crear y extraer un archivo tar. Para extraer un archivo, use tar -xf comando 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 Gnu tar.


Linux
  1. 16 comandos Tar para comprimir y extraer archivos en Linux

  2. Cómo crear un alias y usar el comando Alias ​​en Linux

  3. 10 ejemplos de comandos Tar en Linux para crear y extraer archivos

  4. Comando tar de Linux

  5. Comando Linux ln

Cómo crear una copia de seguridad con el comando tar en Linux

Comando tar de Linux:cómo comprimir archivos en Linux

Comando TAR de Linux y Unix

Cómo descomprimir archivos tar bz2 xz gz en Linux

Cómo extraer el archivo Tar.xz en la línea de comandos de Linux

Comando tar de Linux para comprimir y extraer archivos