Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Capturador De Pantalla Con Scrot
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Capturador De Pantalla Con Scrot 
 
Veréis, estoy tratando de hacer un script con Zenity para que me capture la pantalla y no se porque no me funciona. He investigado en varios sitios y no encuentro una solución y espero que aquí me podáis ayudar...

Os paso el código:
#!/bin/sh

MENU=$(zenity --title="Capturador: Menú principal" --window-icon=/usr/share/pixmaps/capturador/icono.png --list "Tomar una instantánea" "Captura con temporizador" --column="")

case "$MENU" in
"Tomar una instantánea") if [ -f ~/Captura.png ]; then
zenity --warning --title="Capturador: Archivo encontrado" \
--text="Se ha encontrado una captura en su carpeta personal, renombre el archivo."  && scrot -d 3 ~/Captura.png && eog ~/Captura.png
else
scrot -d 3 ~/Captura.png && eog ~/Captura.png
fi;;

"Captura con temporizador")
TEMPORIZADOR=$(zenity --entry \
--title="Capturador: Captura con temporizador" \
--text="¿Cuántos segundos?")

scrot -d $TEMPORIZADOR ~/Captura.png && eog ~/Captura.png;;
 

Si lo intento ejecutar en una terminal con: ./Capturador.sh obtengo esto: ./Capturador.sh: 13: ./Capturador.sh: Syntax error: ")" unexpected (expecting ";;")

¡Gracias de antemano!  
 



 
LalaLalines - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Capturador De Pantalla Con Scrot 
 
Hola LalaLines

En principio el fallo del script es que le falta el cierre del bloque "case", mediante la palabra clave "esac" al final. Segundo, merece la pena organizar mejor el código mediante indentaciones y lineas en blanco, etc., para su mejor lectura y comprensión. Y tercero, puedes ahorrar la comprobación de si existe previamente un fichero con el mismo nombre, ya que aunque avisas de su existencia, el programa scrot lo sobreescribe igualmente.

Esto último se puede solucionar añadiendo una cadena diferente al nombre del fichero resultante, en este caso he escogido una marca de tiempo mediante date +%s, que da los segundos desde 1/1/1970. Este es el resultado de las correcciones al script:

#!/bin/sh

MENU=$(zenity --title="Capturador: Menú principal" \
--window-icon=/usr/share/pixmaps/capturador/icono.png \
--list "Tomar una instantánea" "Captura con temporizador" --column="")

DATE=$(date +%s)

case "$MENU" in

    "Tomar una instantánea")

        scrot -d 3 ~/Captura$DATE.png && eog ~/Captura$DATE.png
    ;;

    "Captura con temporizador")

        TEMPORIZADOR=$(zenity --entry \
        --title="Capturador: Captura con temporizador" \
        --text="¿Cuántos segundos?")

        scrot -d $TEMPORIZADOR ~/Captura$DATE.png && eog ~/Captura$DATE.png
    ;;
esac
 


Espero que te sirva así, saludos

P.D. Hay  varios libros muy interesantes sobre bash (y muchas otras cosas) aquí: http://it-ebooks.info/search/?q=bash&type=title
 




===================
Jesús Guardón

Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".

"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
 
jguardon - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Pantalla De Bienvenida anahaga General 2 Martes, 09 Noviembre 2010, 09:50 Ver último mensaje
jsbsan
No hay nuevos mensajes La Pantalla Del Gestor De Empaquetado Se S... alki General 2 Sabado, 02 Julio 2011, 22:38 Ver último mensaje
alki
No hay nuevos mensajes Reloj Biometrico - Capturador De Huella whisper General 9 Domingo, 11 Octobre 2015, 18:52 Ver último mensaje
jsbsan
No hay nuevos mensajes PintaScreen: Algo Más Que Un Capturador D... jsbsan Aplicaciones/Fragmentos de Código 31 Viernes, 23 Noviembre 2018, 11:07 Ver último mensaje
jsbsan
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron