GNU/Linux >> Tutoriales Linux >  >> Linux

Canalizar hacia/desde el portapapeles en el script Bash

Hay una gran cantidad de portapapeles con los que podrías estar lidiando. Supongo que probablemente sea un usuario de Linux que quiera poner cosas en el portapapeles principal de X Windows. Por lo general, el portapapeles con el que desea hablar tiene una utilidad que le permite hablar con él.

En el caso de X, hay xclip (y otros). xclip -selection c enviará datos al portapapeles que funciona con Ctrl + C , Ctrl + V en la mayoría de las aplicaciones.

Si estás en Mac OS X, hay pbcopy . por ejemplo, cat example.txt | pbcopy

Si está en el modo de terminal de Linux (sin X), busque en gpm o pantalla que tiene un portapapeles. Prueba el screen comando readreg .

Bajo Windows 10+ o cygwin, use /dev/clipboard o clip .


Asegúrate de estar usando alias xclip="xclip -selection c" o de lo contrario no podrá pegar usando Ctrl +v .

Ejemplo:Después de ejecutar echo -n test | xclip , Ctrl +v pegará test


Instalar

# You can install xclip using `apt-get`
apt-get install xclip

# or `pacman`
pacman -S xclip

# or `dnf`
dnf install xclip

Si no tiene acceso a apt-get ni pacman , ni dnf , las fuentes están disponibles en sourceforge.

Configuración

Golpe

En ~/.bash_aliases , añade:

alias setclip="xclip -selection c"
alias getclip="xclip -selection c -o"

No olvides cargar tu nueva configuración usando . ~/.bash_aliases o reiniciando tu perfil.

Pescado

En ~/.config/fish/config.fish , añade:

abbr setclip "xclip -selection c"
abbr getclip "xclip -selection c -o"

No olvide reiniciar su instancia de fish reiniciando su terminal para que se apliquen los cambios.

Uso

Ahora puede usar setclip y getclip , por ejemplo:

$ echo foo | setclip
$ getclip
foo

Linux
  1. Evitar que un script bash se ejecute simultáneamente

  2. ¿Instalar programas desde el script Bash?

  3. Variable en Bash Script que mantiene su valor desde la última vez que se ejecutó

  4. Cómo canalizar texto desde la línea de comando al portapapeles

  5. ¿Es posible recuperar el contenido de un script bash en ejecución desde la RAM?

¿Por qué The Bash Script no reconoce los alias?

¿Cuál es la mejor manera de detectar (a partir de un script) si el software está instalado?

¿Cómo detener el script Loop Bash en la terminal?

¿Incluir condicionalmente una etapa de tubería en un script Bash?

Bash Script para Center Fortune/texto de Stdin/pipe?

Bash script para eliminar el archivo más antiguo de una carpeta