¿Cómo suele copiar todo o parte de un archivo de texto cuando trabaja en el escritorio de Linux? Lo más probable es que abra el archivo en un editor de texto, seleccione todo o solo el texto que desea copiar y péguelo en otro lugar.
Eso funciona. Pero puede hacer el trabajo un poco más eficientemente en la línea de comando usando la utilidad xclip. xclip proporciona un conducto entre los comandos que ejecuta en una ventana de terminal y el portapapeles en un entorno de escritorio gráfico de Linux.
Instalando xclip
xclip no es un kit estándar con muchas distribuciones de Linux. Para ver si está instalado en su computadora, abra una ventana de terminal y escriba cuál xclip . Si ese comando devuelve una salida como /usr/bin/xclip , entonces estás listo para ir. De lo contrario, debe instalar xclip.
La terminal de Linux
- Los 7 mejores emuladores de terminal para Linux
- 10 herramientas de línea de comandos para el análisis de datos en Linux
- Descargar ahora:hoja de referencia de SSH
- Hoja de trucos de comandos avanzados de Linux
- Tutoriales de línea de comandos de Linux
Para hacer eso, use el administrador de paquetes de su distribución. O, si es aventurero, tome el código fuente de GitHub y compílelo usted mismo.
Hacer lo básico
Supongamos que desea copiar el contenido de un archivo en el portapapeles. Hay dos formas de hacerlo con xclip. Escriba:
xclip file_name
o
xclip -sel clip file_name
¿Cuál es la diferencia entre los dos comandos (aparte de que el segundo es más largo)? El primer comando funciona si usa el botón central del mouse para pegar texto. Sin embargo, no todos lo hacen. Muchas personas están condicionadas a usar un menú contextual o presionar Ctrl+V para pegar texto. Si eres una de esas personas (¡lo soy!), usando el -sel clip La opción asegura que puedes pegar lo que quieras pegar.
Uso de xclip con otras aplicaciones
Copiar el contenido de un archivo directamente al portapapeles es un buen truco de salón. Lo más probable es que no lo hagas muy a menudo. Hay otras formas de usar xclip, y esas implican emparejarlo con otra aplicación de línea de comandos.
Ese maridaje se hace con una tubería (|). La canalización redirige la salida de una aplicación de línea de comandos a otra. Hacer eso abre varias posibilidades. Echemos un vistazo a tres de ellos.
Digamos que es administrador del sistema y necesita copiar las últimas 30 líneas de un archivo de registro en un informe de error. Abrir el archivo en un editor de texto, desplazarse hasta el final y copiar y pegar es un poco de trabajo. ¿Por qué no usar xclip y la utilidad tail para hacer la tarea rápida y fácilmente? Ejecute este comando para copiar esas últimas 30 líneas:
tail -n 30 logfile.log | xclip -sel clip
Buena parte de mis escritos se destina a algún sistema de administración de contenido (CMS) u otro para publicar en la web. Sin embargo, nunca uso el editor WYSIWYG de un CMS para escribir; escribo sin conexión en texto sin formato formateado con Markdown. Dicho esto, muchos de esos editores tienen un modo HTML. Al usar este comando, puedo convertir un archivo con formato Markdown a HTML usando Pandoc y copiarlo al portapapeles de una sola vez:
pandoc -t html file.md | xclip -sel clip
A partir de ahí, lo pego.
Dos de mis sitios web están alojados en GitLab Pages. Genero los certificados HTTPS para esos sitios usando una herramienta llamada Certbot, y necesito copiar el certificado de cada sitio a GitLab cada vez que lo renuevo. Combinar el comando cat y xclip es más rápido y eficiente que usar un editor. Por ejemplo:
cat /etc/letsencrypt/live/website/fullchain.pem | xclip -sel clip
¿Eso es todo lo que puedes hacer con xclip? Definitivamente no. Estoy seguro de que puedes encontrar más usos que se ajusten a tus necesidades.
Reflexiones finales
No todos usarán xclip. Esta bien. Sin embargo, es una de esas pequeñas utilidades que realmente son útiles cuando las necesitas. Y, como he descubierto en algunas ocasiones, no sabes cuándo lo necesitarás. Cuando llegue ese momento, te alegrarás de que xclip esté ahí.