Xclip. Portapapers, clipboard

De Wikijoan
Dreceres ràpides: navegació, cerca

Introducció

El problema que es planteja és automatitzar la còpia del contingut de pàgines web a un fitxer. Amb Ctrl-A selecciono tot el contingut, i amb Ctrl-C copio el contingut al portapapers. Després a un fitxer puc fer Ctrl-V per enganxar el contingut. Hi ha possibilitats d'automatitzar el procés. La solució passa per xclip en combinació amb xdotool.

xclip

xclip is a command line interface to the X11 clipboard
$ sudo apt-get install xclip
$ man xclip

To put the output of a command into the clipboard:

$ ls -la | xclip
o bé
$ uptime | xclip

aleshores, amb el botó del mig puc fer el paste (a la consola o en una aplicació gràfica)

 18:59:31 up 10 min,  2 users,  load average: 0.13, 0.31, 0.20

Si vull utilitzar Ctrl-V en comptes del botó del mig, utilitzaré:

$ uptime | xclip -selection c

Per posar tot el contingut d'un fitxer (e.g. /etc/apt/sources.list) al porta-papers:

$ xclip /etc/apt/sources.list

I per mostrar el contingut del porta-papers:

$ xclip -o

I per volcar el contingut del porta-papers a un fitxer:

$ xclip -o > ~/test.txt

Problema plantejat

El problema que es planteja és com copiar el contingut de moltes pàgines web a un fitxer, de la manera més ràpida possible. Una de les coses que ralentitza el proceś és haver de canviar de finestra entre el Firefox i gedit. Si ens podem evitar el procés de treballar amb el gedit millor, i si el procés d'enganxar acumulant (append) directament a un fitxer, utilitzant xclip, millor. Una altra cosa interessant és utiltizar dreceres del teclat per copiar el text d'una pàgina amb el teclat:

La primera idea és tenir un programet amb C que cada segon, posem per cas, posi el contingut del clipboard a un fitxer, i que es compari aquest fitxer amb el de l'anterior segon. Si els fitxers són diferents vol dir que el clipboard s'ha actualitzat, i per tant el nou clipboard el puc ficar (append) al fitxer on acumulant informació i que processaré a posteriori. Això no ha de ser difícil.

Una altra volta de torca és evitar que jo hagi de teclejar Ctrl-A, etc. És a dir, enviar les comandes Ctrl-A, etc, a la finestra i al tab correcte del procés Firefox? D'aquesta manera jo em limitaria a navegar per determinades pàgines, i el programet C estaria fent tota la feina de copiar/enganxar i acumular en un fitxer. Això seria la repera.

per copiar el codi font d'una pàgina amb el teclat:

hi ha alguna manera d'automatitzar això des de C o des d'un script?

Mirar xdotool - command-line X11 automation tool


creat per Joan Quintana Compte, febrer 2013

Eines de l'usuari
Espais de noms
Variants
Accions
Navegació
IES Jaume Balmes
Màquines recreatives
CNC
Informàtica musical
joanillo.org Planet
Eines