Script para guardar una imagen copiada en el portapapeles | Programador Web Valencia

Script para guardar una imagen copiada en el portapapeles

1 minuto

WebSockets

En este artículo voy a explicar cómo guardar una imagen copiada en el portapapeles. Esto puede ser útil para guardar una captura de pantalla o una imagen que hayamos copiado de una página web.

Para copiar una imagen del portapapeles necesitaremos el comando xclip en Linux. Si no lo tienes instalado, puedes hacerlo con el siguiente comando:

sudo apt install xclip

En MacOS puedes usar pbpaste y pbcopy para copiar y pegar en el portapapeles.

brew install pbpaste
brew install pbcopy

En los ejemplos me centraré en Linux, pero es fácil adaptarlo a MacOS.

A continuación ya podremos usar el siguiente comando para guardar la imagen en PNG.

xclip -selection clipboard -t image/png -o > imagen.png

Aunque podemos mejorarlo. Por ejemplo, podemos usar la fecha y hora para nombrar el archivo:

xclip -selection clipboard -t image/png -o > $(date +"clipboard-%Y-%m-%d-%H-%M-%S.png")

En mi caso he creado una función en Fish para guardar la imagen en la carpeta ~/Pictures/Screenshots/ y abrirla con en el explorador de archivos.

function image-to-save-from-clipboard --description \
    "Save image from clipboard"
    set -l filename (date +"clipboard-%Y-%m-%d-%H-%M-%S.png")
    set -l filepath ~/Pictures/Screenshots/
    cd $filepath
    xclip -selection clipboard -t image/png -o > $filename
    open $filepath
end

A partir de aquí ya puedes dejar libre tu imaginación, como por ejemplo estar vigilando el portapapeles y guardar automáticamente las imágenes que se copien.

Espero que te haya sido útil.

Esta obra está bajo una Licencia Creative Commons Atribución-NoComercial-SinDerivadas 4.0 Internacional.

Atribución/Reconocimiento-NoComercial-SinDerivados 4.0 Internacional

¿Me invitas a un café? ☕

Puedes hacerlo usando el terminal.

ssh customer@andros.dev -p 5555

Comentarios

{{ comments.length }} comentarios

Nuevo comentario

Nueva replica  {{ formatEllipsisAuthor(replyComment.author) }}

Acepto la política de Protección de Datos.

Escribe el primer comentario

Tal vez también te interese...