Cómo copiar y pegar texto, archivos y carpetas en la terminal de Linux

Copiar y pegar es una de las acciones más utilizadas en una computadora. Aunque es fácil hacerlo con los atajos de teclado Ctrl + C y Ctrl + V, en la terminal de Linux no es tan sencillo. Tienes varias opciones para realizar la tarea. Aquí te mostramos cómo puedes copiar y pegar texto, archivos y directorios en la terminal de Linux.
Tabla de Contenidos
- Copiar y Pegar Texto
- Copiar y Pegar un Solo Archivo
- Copiar y Pegar una Carpeta y su Contenido
- Copiar y Pegar Múltiples Archivos
- Copiar y Pegar Todos los Archivos del Mismo Tipo
- Hacer que Copiar Sea Más Interactivo
- Rsync vs CP
- Mover un Archivo o Carpeta
- Preguntas Frecuentes
También lee: Cómo eliminar un directorio en Linux
Copiar y Pegar Texto
Si solo quieres copiar un fragmento de texto en la terminal, todo lo que necesitas hacer es resaltarlo con el mouse, luego presiona Ctrl + Shift + C para copiar.
Para pegarlo donde está el cursor, usa el atajo de teclado Ctrl + Shift + V.
El atajo de Pegar también se aplica cuando copias una sección de texto de un documento de Word (o cualquier otra aplicación) y quieres pegarlo en la terminal. Por ejemplo, puedes copiar un comando de una página web en tu navegador y usar el atajo Ctrl + Shift + V para pegarlo en la terminal.
Si por alguna razón estos atajos de teclado no funcionan, la terminal podría no estar configurada correctamente para ello. Busca opciones que te permitan personalizar los atajos de teclado. Estas son instrucciones para las terminales más populares:
- Gnome Terminal – Haz clic en el menú de hamburguesa y luego en “Preferencias.” Navega a “Atajos” y desplázate a “Editar.” Las opciones para “Copiar” y “Pegar” aparecerán allí listas para ser configuradas.
- Konsole – Ve a “Configuración” y luego haz clic en “Configurar Atajos de Teclado.” Busca “Copiar,” configúralo para usar las combinaciones de teclas mencionadas anteriormente, luego haz lo mismo para “Pegar.”
La mayoría de las otras terminales te bloquearán en la combinación universal predeterminada para copiar/pegar en la consola sin la capacidad de configurarlas.
También lee: Cómo usar cURL para la transferencia de datos en la línea de comandos y más
Copiar y Pegar un Solo Archivo
Cada vez que quieras copiar un archivo o carpeta en la línea de comandos de Linux, el atajo de teclado anterior no funcionará. Debes usar el comando cp. cp es la abreviatura de copiar. La sintaxis también es simple. Usa cp seguido del archivo que deseas copiar y el destino donde deseas moverlo.
cp your-file.txt ~/Documents/
Eso, por supuesto, asume que tu archivo está en el mismo directorio en el que estás trabajando. Puedes especificar ambos.
cp ~/Downloads/your-file.txt ~/Documents/También tienes la opción de renombrar tu archivo mientras lo copias. Especifica el nuevo nombre en el destino.
cp ~/Downloads/your-file.txt ~/Documents/new-name.txtTambién lee: Cómo usar el comando dd en Linux
Copiar y Pegar una Carpeta y su Contenido
Para copiar una carpeta y su contenido, necesitarás indicarle al comando cp que copie de forma recursiva. Eso es bastante sencillo con la bandera -r.
cp -r ~/Downloads/pictures-directory ~/Pictures/family-vacation-pics
El resto de tu sintaxis es exactamente la misma. La bandera -r sirve para indicarle a cp que está trabajando con un directorio y debe copiar su contenido.
Si deseas que la acción de pegar sobrescriba archivos existentes, puedes agregar la bandera -f:
cp -rf ~/Downloads/pictures-directory ~/Pictures/family-vacation-picsTambién lee: Cómo usar el comando rm en Linux
Copiar y Pegar Múltiples Archivos
También puedes copiar múltiples archivos. La línea de comandos de Linux te permite dirigirte a múltiples elementos a la vez con corchetes {}. Puedes usarlos para listar los nombres de cada archivo a copiar separados por comas.
cp ~/Downloads/{file1.txt,file2.jpg,file3.odt} ~/Documents/
Los tres archivos de diferentes tipos de archivo se copiarán al directorio Documentos.
Copiar y Pegar Todos los Archivos del Mismo Tipo
Si tienes un montón de archivos del mismo tipo para copiar, puedes usar el carácter comodín *. El asterisco/comodín le dice a la línea de comandos de Linux que acepte absolutamente cualquier cosa en ese lugar. Así que, si le dices a Linux que copie *.jpg, copiará todos los archivos JPG, independientemente del nombre o de lo que venga antes de la parte .jpg.
cp ~/Downloads/*.jpg ~/Pictures/
Si deseas usar múltiples tipos de archivos, digamos JPG y PNG, puedes usar los corchetes de antes.
cp ~/Downloads/*.{jpg,png} ~/Pictures/También lee: Cómo copiar y pegar en sitios que no te lo permiten
Hacer que Copiar Sea Más Interactivo
Como habrás notado mientras seguías esta guía, usar cp no te da ningún tipo de confirmación o aviso después de terminar lo que está haciendo a menos que encuentre un error. Esto puede causar un poco de incomodidad, especialmente cuando estás realizando operaciones de copia de archivos muy grandes en hardware más lento que podría tardar mucho tiempo en completarse.
Al adjuntar la bandera -v a tu comando, le dices a cp que te dé su salida más detallada sobre lo que hace. La bandera -i proporciona avisos de confirmación para que tengas la oportunidad de cancelar ciertas operaciones como sobrescribir ciertos archivos.
cp -rvi ~/Downloads/*.jpg ~/Pictures/Generalmente, las banderas -v y -i están disponibles en una amplia gama de comandos que son comunes en Linux.
Rsync vs CP
Si necesitas realizar varias operaciones de copia que sobrescriben archivos (como crear una copia de seguridad que actualizarás de vez en cuando) por alguna razón, rsync podría hacerte sonreír.
rsync es un poco más avanzado en el sentido de que entra en los detalles de cada archivo, realiza una comparación completa de los datos en ambos, y dentro del archivo mismo, solo sobrescribe los datos que han cambiado. Esto es especialmente útil si la carpeta de destino está en un SSD, ya que ahorra ciclos de escritura y no degrada innecesariamente la salud de la unidad al sobrescribir archivos completos.
Aprende cómo hacer uso de rsync para copiar archivos en Linux.
También lee: Cómo guardar la salida de la terminal en un archivo en Linux
Mover un Archivo o Carpeta
Si llegaste aquí buscando mover un archivo de un lugar a otro sin hacer un duplicado, también puedes hacerlo fácilmente, pero mover un archivo requiere el comando mv. La sintaxis es muy similar a cp.
mv ~/Downloads/your-file.txt ~/Documents/De manera similar, también puedes renombrar el archivo.
mv ~/Downloads/your-file.txt ~/Documents/renamed.txtSin embargo, hay una gran diferencia. No necesitas la bandera -r para mover una carpeta completa.
mv ~/Downloads/downloaded-folder ~/Pictures/vacation-picsPreguntas Frecuentes
¿Es rsync mejor que cp?
Ninguno es mejor que el otro en general. rsync hará comparaciones completas de archivos en ambas carpetas de origen y destino, utilizando algunos recursos de computación para ahorrar en ancho de banda o ciclos de escritura. Es genial si estás actualizando constantemente una copia de seguridad de una carpeta en particular, pero menos que ideal si solo estás realizando una operación de copia única.
cp funciona más como un cuchillo suizo que solo quiere hacer el trabajo. Si tienes que sobrescribir algo, cp lo hace por ti. Debido a su capacidad de interactividad, también es más amigable para principiantes y te da un poco más de control sobre el proceso de copia.
¿Por qué no puedo simplemente usar Ctrl+C para copiar elementos de mi terminal?
En las aplicaciones de terminal de Linux, presionar Ctrl + C en tu teclado envía una señal SIGINT (interrupción) al kernel. Es una forma sencilla de decirle a Linux que detenga lo que sea que se esté ejecutando en esa terminal en particular.
Si configuras la función “Copiar” en tu terminal para responder a esa combinación de teclas, encontrarás problemas al copiar una línea de texto de un comando en ejecución mientras aún está en proceso de hacer algo.
Crédito de la imagen: Neron Photos en Pexels