Usa Xclip Para Copiar y Pegar Rápidamente en la Terminal de Linux

Si eres un usuario de Linux, especialmente uno que disfruta trabajar en la terminal, una herramienta que puede cambiar completamente la forma en que gestionas texto en tu terminal de Linux es xclip. En lugar de resaltar texto con el mouse, hacer clic derecho y luego pegarlo en otro lugar, puedes canalizar texto directamente a xclip, y actualizará instantáneamente tu portapapeles. Desde allí, puedes pegarlo en un documento, un correo electrónico o incluso en otra ventana de terminal usando un rápido Ctrl + V.
xclip es lo suficientemente versátil como para manejar numerosos tipos de datos, no solo texto plano. Ya sea que estés copiando código, comandos o archivos de configuración, xclip trata todo este contenido de manera consistente.
Nota: xclip solo funciona con X11 y no se ejecutará en Wayland. Si estás en Wayland, usa wl-clipboard (wl-copy y wl-paste) en su lugar.
Comenzando con Xclip
Para comenzar con xclip, necesitarás instalarlo usando el gestor de paquetes predeterminado de tu sistema. Por ejemplo, si estás ejecutando Ubuntu como yo, usa:
sudo apt install xclipPara distribuciones basadas en Arch, usarías:
sudo pacman -S xclipFedora o CentOS/RHEL, ejecuta esto:
sudo dnf install xclip¡Una vez que esté instalado, estás listo para comenzar!
Copiar y Pegar Sin un Mouse
Cuando usas xclip, estás interactuando directamente con el búfer del portapapeles de tu sistema. Ya sea que estés copiando la salida de un comando o el contenido de un archivo, xclip lee desde la entrada estándar (stdin) y escribe en la selección X (portapapeles). En términos simples: lo que sea que canalices a xclip se añadirá a tu portapapeles.
Por ejemplo, si tienes un archivo llamado “notes.txt” y quieres copiar todo su contenido, puedes ejecutar:
cat notes.txt | xclip -selection clipboard
Esta simple línea envía todo desde “notes.txt” directamente a tu portapapeles, justo como si lo hubieras seleccionado manualmente y presionado Ctrl + C.
Para pegar el contenido en cualquier documento o terminal, solo usa el regular Ctrl + V.
¿Quieres pegar el contenido del portapapeles de vuelta en la terminal o usarlo en otro comando? Usa la opción -o (salida):
xclip -o-selection clipboardEste comando imprime lo que actualmente está en tu portapapeles. Incluso puedes redirigir esa salida a un archivo así:
xclip -o-selection clipboard > my_copied_list.txtPero, ¿qué pasa si solo quieres copiar una porción específica de texto de tus archivos? En ese caso, puedes usar otras herramientas de Linux como sed, grep, head, tail o awk para filtrar el contenido antes de canalizarlo a xclip.
Por ejemplo, para copiar solo las líneas 5 a 10 de “notes.txt”, usa:
sed-n'5,10p' notes.txt | xclip -selection clipboardAquí, la bandera -n limita la salida inicial, y -p le dice a sed que imprima solo las líneas especificadas. El resultado se envía a tu portapapeles, listo para pegar. Además, si estás trabajando con capturas de pantalla u otros archivos de imagen, xclip también puede manejarlos.
Hacer el Proceso de Selección Aún Más Simple
Una cosa que realmente me molestaba era tener que escribir esos largos comandos de selección una y otra vez. Para solucionar esto, creé alias en mi archivo “~/.bashrc” para hacer el proceso de selección más simple y rápido. Solo abre tu archivo “~/.bashrc” con cualquier editor de texto:
nano ~/.bashrcA continuación, agrega estas dos líneas:
alias setclip="xclip -selection clipboard"
alias getclip="xclip -selection clipboard -o"
Recárgalo con:
source ~/.bashrcAhora, simplemente puedes usar setclip para copiar y getclip para pegar. Por ejemplo, para copiar todo el contenido del archivo, ejecuta:
cat notes.txt | setclipPara pegarlo en la terminal, ejecuta:
getclip
¡Eso es todo! No más escribir esos largos comandos cada vez.
¿Es Útil Usar Xclip?
La respuesta simple es sí. Es mucho más útil de lo que piensas. Si escribes scripts, trabajas en la terminal todo el día o gestionas sistemas remotos, esta herramienta puede ahorrarte un tiempo y esfuerzo significativos.
Personalmente, me encanta porque aumenta mi eficiencia mientras trabajo en la terminal. Ya no tengo que detenerme, agarrar el mouse, desplazarme por el texto o arriesgarme a perder algo al copiar. También es extremadamente útil para desarrolladores y administradores de sistemas que copian frecuentemente registros, mensajes de error o bloques de configuración.
Sin embargo, si deseas funciones adicionales como mantener un historial, ejecutar scripts o manejar imágenes, prueba un gestor de portapapeles como CopyQ, cliphist, Autocutsel y el Proyecto Clipboard.
Reflexiones Finales
El comando xclip no es una herramienta sobreingenierizada o complicada. Es simple, pero una vez que comiences a usarlo, te preguntarás cómo trabajaste alguna vez sin él. Solo al aprender comandos como estos, puedes acelerar tu flujo de trabajo y mantenerte concentrado en la terminal.
Si aún no lo has probado, dale una oportunidad. Instálalo, ejecuta algunas pruebas y observa cuán más suave se vuelve tu copia y pega. Y recuerda, xclip no es la única herramienta que existe. Hay muchas otras órdenes de Linux que pueden aumentar tu productividad. Incluso puedes considerar reemplazar tus herramientas de línea de comandos regulares con alternativas más nuevas y eficientes.