xclip: Manipularea clipboardului din linia de comandă

El clipboard o clipboard este un instrument oferit de serverul X al sistemului nostru de operare pentru a partaja informații între aplicații.

El este responsabil pentru operațiuni recurente precum tăiat, a copia y pastă. Acesta constă dintr-un fel de depozit sau tampon în care aplicațiile pot stoca date, astfel încât acestea să poată fi utilizate ulterior de aceeași sau de alte aplicații.

În general, știm cu toții să-l folosim din punct de vedere al utilizatorului, fie prin meniurile aplicației, fie prin comenzile rapide de la tastatură, de obicei:

  • Ctrl+X Tăiați
  • Ctrl+C Copiați
  • Ctrl+V Pentru a lipi

Totuși, ce se întâmplă atunci când vrem să folosim clipboardul de la un scenariu?

xclip

xclip este o aplicație care ne permite să introducem text în clipboard și să extragem text din acesta din linia de comandă. Este posibil ca textul recuperat să fi fost introdus de orice altă aplicație.

La fel, textul care este introdus în clipboard prin xclip poate fi folosit de orice altă aplicație.

El paquete xclip poate fi găsit în depozitele celor mai multe distribuții. De exemplu, în Ubuntu nu aveți nevoie de mai mult decât un apt-get pentru al instala:

$ sudo apt-get install xclip

Utilizarea sa de bază este foarte simplă. Pentru a introduce textul de intrare standard în clipboard, trebuie specificată opțiunea -i:

$ echo "Hola mundo" | xclip -i

Textul „Hello world” va deveni disponibil pentru restul aplicațiilor. La fel, pentru a prelua textul din clipboard și a-l trimite la ieșirea standard, opțiunea -o:

$ xclip -o Bună lume

Selecțiile

Clipboard-ul ne oferă trei tampoane sau Selecțiile diferit:

  • INVATAMANT PRIMAR: Este bufferul implicit. Stochează text pur și simplu marcându-l cu cursorul, fără a fi nevoie să apăsați o combinație de taste sau orice opțiune din meniu.
  • CLIPBOARD: Acest buffer este cel mai utilizat de aplicații. Acesta stochează textul selectat de cursor numai după ce ați apăsat combinația de taste sau opțiunea de meniu pentru a tăia sau copia.
  • SECUNDAR: Este un tampon auxiliar și independent. Este complet disponibil, dar este rar folosit de aplicații ca standard. Este utilizat numai în scopuri foarte specifice.

xclip poate manipula toate cele trei tampoane. Este necesar doar să specificăm pe care dorim să o folosim, prin opțiune -selecţie și prima literă a numelui tampon. În mod implicit, este utilizat bufferul INVATAMANT PRIMAR.

De exemplu, pentru a obține textul care a fost tăiat într-o altă aplicație, trebuie să specificăm că dorim conținutul de ieșire al tamponului CLIPBOARD, cu opțiuni -o y -selecție c

$ xclip -o -selection c
Texto cortado en gedit

O aplicație practică

Instrumentul xclip oferă multe posibilități. Este util în principal în script-uri, unde nu avem posibilitatea de a utiliza comenzile rapide de la tastatură, deoarece procesele se desfășoară în mod autonom.

Să luăm un exemplu: să ne imaginăm că dorim să putem căuta orice cuvânt care apare în orice aplicație sau pagină web din wordreference pentru a o traduce în engleză sau din engleză cu o singură apăsare de tastă.

Mai întâi, trebuie să aflăm formatul URL cu care parametrii sunt transferați la site-ul web de destinație. În acest caz, sunt următoarele:

http://www.wordreference.com/es/translation.asp?tranword=CUVÂNT

Odată ce știm asta, trebuie pur și simplu să creăm un scenariu deschideți această adresă URL cu, de exemplu Firefox, substituind CUVÂNT prin codul echivalent care ne returnează textul găsit în clipboard.

Îl vom numi, de exemplu, wordreference.sh și va conține următoarele:
#!/bin/bash
firefox http://www.wordreference.com/es/translation.asp?tranword=$(xclip -o)

În cele din urmă, odată ce ne-am salvat scenariu și am dat permisiuni de execuție, trebuie să o asociem cu o comandă rapidă de la tastatură în managerul nostru de desktop. De exemplu, atribuim combinația Ctrl+G. Și o avem gata.

Acum nu trebuie decât să-l folosim. Marcăm cu cursorul orice cuvânt pe care dorim să îl traducem și apăsăm Ctrl+G. Vom vedea cum, fără alte întrebări, browserul se deschide cu pagina corespunzătoare traducerii cuvântului marcat.

Este un mod practic de a avea întotdeauna traducătorul la îndemână fără a instala aplicații de dicționar.

În plus, aceeași metodă poate fi utilizată pentru a invoca orice altă pagină web, cum ar fi Google, Wikipedia sau un alt site care ne permite să efectuăm căutări sau să deschidem aplicații care necesită parametri în apelul dvs.

Mai multe aplicații? Ceea ce sugerează imaginația.


Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.

  1.   KZKG ^ Gaara el a spus

    Bun articol, sunt necesare mai multe de genul acesta pe net.

    De când am scurtat [1] (mai ales în beneficiul meu) am folosit xclip, mai ales pentru că este multi-desktop, adică nu contează dacă este Gnome sau KDE sau etc., voi putea manipula date din clipboard fără probleme 🙂

    În ceea ce priveşte

    [1] -» blog.desdelinux.net/tag/acorta/

    1.    beny_hm el a spus

      admin o întrebare cum iese logo-ul tău arc și primesc doar nenorocitul de pinguin XD Vreau să iasă acel mic logo T_T

  2.   wikimx el a spus

    Excelent, xclip îmi dă o idee pentru un script cu axel, dacă reușesc corect scriptul, îl împărtășesc cu tine în acest domeniu 😀

  3.   să folosim Linux el a spus

    Grozav!

  4.   neysonv el a spus

    Un articol excelent deschide ușile pentru o mulțime de idei. Nu mă îndoiesc decât de rămâne; se presupune că este pentru serverul x, deci întrebarea este: va funcționa pentru wayland sau mir ??? pentru xmir este evident că da, dar nu și în celelalte două cazuri.
    salutări

  5.   săracul taku el a spus

    ce tare, încă o comandă pentru arsenal