Administración del Copy & Paste [ Bash ]

Iniciado por leogtz, 1 Agosto 2010, 01:02 AM

0 Miembros y 1 Visitante están viendo este tema.

leogtz

Hola, esto surgió de la necesidad de administrar lo que copio y debo respaldar de internet.

Se trata de un script en Bash, usando las herramientas Xdialog y Parcellite.

Parcellite es un administrador del portapapeles, para GNU/Linux, aquí la descripción:

Parcellite is a lightweight GTK+ clipboard manager. This is a stripped down, basic-features-only clipboard manager with a small memory footprint for those who like simplicity.


Uso:
 parcellite [OPCIÓN...]

Ejemplos del portapapeles por el terminal:

 echo "copiado a portapapeles" | parcellite
 parcellite "copiado a portapapeles"
 echo "copiado a portapapeles" | parcellite -o

Opciones de ayuda:
 -?, --help        Mostrar opciones de ayuda

Opciones de la aplicación:
 -d, --daemon      Ejecutar como demonio
 -n, --no-icon     No usar icono de estado (Ctrl-Alt-P para el menú)
 -o, --output      Imprimir contenido del portapapeles

Escrito por Gilberto "Xyhthyx" Miralla.
Reportar errores a <xyhthyx@gmail.com>.


Este software nos permite "programar" una acción con el contenido del portapapeles, esta acción se ejecuta con un atajo de teclado que podemos definir.


Bueno, pues hice el script siguiente, que mediante la acción tu puedas respaldar en un archivo lo que copiaste:

Código (bash) [Seleccionar]
#!/usr/bin/bash
#===============================================================================
#          FILE:  clip.sh
#         USAGE:  ./clip.sh
#   DESCRIPTION:  Script de automatización de copiado y pegado.
# parcelite, xdialog y este pequeño script.

# Mediante la opción "Acciones" de parcelite, podemos programar una opción
# En este caso llamaremos a este script para que volque el texto.
#  REQUIREMENTS:  --- Xdialog, parcellite
#        AUTHOR: Leo Gutiérrez Ramírez. (fgm), leorocko13@hotmail.com
#       CREATED: 30/07/10 17:42:34 MDT
#===============================================================================
ELEGIDO=1
while [ $ELEGIDO -eq 1 ]
do
FILE=`Xdialog --backtitle "Leo Gutierrez R." --title "Elija la ruta y el nombre de su archivo" \
--no-buttons --check "Agregar" --fselect "${HOME}" 30 70 2>&1`
case "$?" in
1)
exit 0;
;;
255)
exit 0;
;;
esac
echo -e "Algo : -${FILE}-" | grep "^checked-" > /dev/null && AGREGAR=1 || AGREGAR=0
FILE=`echo -e "${FILE}" | sed -e "s/^checked$//gi" -e "s/^unchecked$//gi"`
if [ -d "${FILE}" ]
then
Xdialog --title "Error de elección de archivo" --msgbox "No ha elegido un nombre de archivo válido.\n
Probablemente solo eligió el directorio destino.\n" 10 50
ELEGIDO=1
else
ELEGIDO=0
fi
done

if [ $AGREGAR -eq 1 ]
then
parcellite -o >> "${FILE}"
else
parcellite -o > "${FILE}"
fi
exit 0;


Aquí está la interfaz del script:


Configuren las acciones de parcellite, poniendo en el comando:
bash "RutaDelScript.sh"

Le puse una opción por si quieres agregar al archivo, es decir, evita que el contenido sea truncado.

Para instalar en Ubuntu:
sudo apt-get install parcellite

Saludos.

Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com

m1kh41l

buenisimo !!!, todo un master leo, algun dia lo aplicare jajaja  ;-)
no te hagas el filósofo en la firma, demuéstralo...