Comando en Linux, crear, copiar, eliminar (Carpeta/directorio) y archivo de texto
Tabla de contenido:
- Copiar archivos con el comando
cp
- Copiar un archivo a un directorio
- Copia múltiples archivos
- Copiar directorios con el comando
cp
- Copiar archivos y directorios con el comando
rsync
- Conclusión
Copiar archivos y directorios es una de las tareas más comunes que realizará cuando trabaje en la línea de comandos. En Linux, hay varios comandos para copiar archivos con
cp
y
rsync
como las herramientas más utilizadas.
Es una práctica común usar el comando
cp
al copiar archivos y el comando
rsync
al copiar directorios.
Para poder copiar archivos y directorios, debe tener al menos permisos de lectura en el archivo de origen y permiso de escritura en el directorio de destino.
Copiar archivos con el comando
cp
En los sistemas operativos Linux y Unix, el comando
cp
se usa para copiar archivos y directorios.
El caso de uso más simple es copiar un archivo en el directorio de trabajo actual. Por ejemplo, para copiar un archivo llamado
file_backup.txt
en un archivo llamado
file_backup.txt
en el directorio actual, debe ejecutar el siguiente comando:
cp file.txt file_backup.txt
Si el archivo de destino existe, se sobrescribirá. Para obtener un mensaje de confirmación antes de sobrescribir los archivos, use la opción
-i
.
cp -i file.txt file_backup.txt
Por defecto, cuando se usa el comando
cp
para copiar un archivo, el nuevo archivo será propiedad del usuario que ejecuta el comando. Use la opción
-p
para conservar el modo de archivo, la propiedad y las marcas de tiempo:
cp -p file.txt file_backup.txt
Otra opción que puede ser útil es
-v
. Al usar esta opción, el comando imprime lo que se está haciendo:
cp -v file.txt file_backup.txt
'file.txt' -> 'file_backup.txt'
Copiar un archivo a un directorio
Para copiar un archivo a un directorio, especifique la ruta absoluta o relativa al directorio. Si se omite el directorio de destino, el archivo se copia en el directorio actual.
En el siguiente ejemplo, estamos copiando el archivo
file.txt
en el directorio
/backup
:
cp file.txt /backup
Al especificar solo el nombre del directorio como destino, el archivo copiado tendrá el mismo nombre que el archivo original.
cp file.txt /backup/new_file.txt
El comando anterior copiará el archivo al directorio especificado como
new_file.txt
.
Copia múltiples archivos
Para copiar varios archivos y directorios a la vez, especifique los nombres de los archivos y directorios de origen seguidos del directorio de destino como último argumento:
cp file.txt dir file1.txt file2.txt dir1
Al copiar múltiples archivos, el destino debe ser un directorio.
El comando cp también le permite usar la coincidencia de patrones. Por ejemplo, para copiar todos los archivos
.png
del directorio actual al directorio
/backup
, usaría:
Copiar directorios con el comando
cp
Para copiar un directorio, incluidos todos sus archivos y subdirectorios, use la opción
-R
o
-r
. En el siguiente ejemplo, estamos copiando el directorio
Pictures
a
Pictures_backup
:
cp -R Pictures Pictures_backup
El comando anterior creará el directorio de destino y copiará recursivamente todos los archivos y subdirectorios desde el origen al directorio de destino.
Si el directorio de destino ya existe, el directorio de origen y todo su contenido se copiarán en el directorio de destino. Para copiar solo los archivos y subdirectorios, pero no los directorios de destino, use la opción
-T
:
cp -RT Pictures Pictures_backup
Las opciones usadas al copiar archivos también se pueden usar al copiar el directorio. La principal diferencia es que al copiar directorios, debe usar la opción
-R
.
Copiar archivos y directorios con el comando
rsync
rsync
es una utilidad de línea de comandos rápida y versátil que sincroniza archivos y directorios entre dos ubicaciones. Se puede usar para copiar archivos en ubicaciones locales y remotas.
rsync
incluye una serie de opciones que controlan cada aspecto de su comportamiento. La opción más útil es
-a
que copia directorios de forma recursiva, transfiere dispositivos especiales y bloquea dispositivos, conserva enlaces simbólicos, tiempos de modificación, grupos, propiedad y permisos.
Para copiar un solo archivo de una a otra ubicación, debe ejecutar el siguiente comando:
rsync -a file.txt file_backup.txt
Si el archivo de destino existe,
rsync
lo sobrescribirá.
Se puede usar el mismo comando para copiar un directorio:
rsync -a /var/www/public_html/ /var/www/public_html_backup/
rsync
amenaza los directorios de origen que terminan con una barra inclinada
/
diferente. Si agrega una barra diagonal al directorio de origen, el comando copiará solo el contenido del directorio de origen al directorio de destino. Cuando se omite la barra diagonal final,
rsync
copiará el directorio de origen dentro del directorio de destino. La opción más segura es incluir siempre la barra inclinada final
/
en el destino y en la fuente.
Para obtener más información sobre
rsync
consulte los siguientes artículos:
Conclusión
En esta guía, le mostramos cómo copiar archivos y directorios en sistemas basados en Linux y Unix utilizando las utilidades
cp
y
rsync
.
Cómo eliminar archivos y directorios usando la línea de comando de Linux
En este tutorial, le mostraremos cómo usar el comando rm para eliminar archivos y directorios a través de ejemplos y explicaciones de las opciones rm más comunes.
Cómo mover archivos y directorios en linux (comando mv)
Mover archivos y directorios es una de las tareas más básicas que a menudo necesita realizar en un sistema Linux. En este tutorial, explicaremos cómo usar el comando mv para mover archivos y directorios.
Cómo cambiar el nombre de archivos y directorios en Linux
Cambiar el nombre de los archivos y directorios es una de las tareas más básicas que a menudo necesita realizar en un sistema Linux. En este tutorial, le mostraremos cómo usar los comandos mv y rename para renombrar archivos y directorios.