Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

182
Vistas
Ejecución de Shell Script después del arranque en Raspberry PI

Estoy creando un tablero de visualización de quiosco web con una raspberry pi y quiero enviar algunas pulsaciones de teclas a la ventana del navegador 2 minutos después de que se haya cargado. El script envía los detalles de inicio de sesión para un servidor web.

Tengo un script que envía las pulsaciones de teclas que funciona bien desde la consola de telnet:

 #!/usr/bash username="username" password="password" echo "Setting Display" export DISPLAY=:0 echo "Sending Username" for char in $(sed -E s/'(.)'/'\1 '/g <<<"$username"); do xdotool key $char done xdotool key Tab echo "Sending Password" for char in $(sed -E s/'(.)'/'\1 '/g <<<"$password"); do xdotool key $char done xdotool key Return echo "Waiting 5 Seconds" sleep 5 echo "Setting Remember Password" xdotool key Tab xdotool key Tab xdotool key Return echo "Finished"

Intenté agregar bash /home/pi/logon.sh al archivo rc.local, pero no envía las pulsaciones de teclas al navegador.

¿Alguien sabe por qué sería eso? Como digo, funciona bien desde la ventana de telnet si ejecuto el script, pero no funciona cuando se ejecuta desde el arranque.

Tenía sleep 120 en la línea antes de que se detuviera si disparaba de inmediato y esperé hasta que el navegador se haya cargado, y sé que el script se está ejecutando desde rc.local, porque cuando elimino el comando de suspensión, veo los ecos del script. .

¿Algunas ideas?

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

La razón por la que no funcionaba era porque el script necesitaba ejecutarse como el usuario pi.

Cambié el código en el script rc.local a esto: su - pi -c "bash /home/pi/logon.sh &"

Esto hace que la secuencia de comandos se ejecute como el usuario pi y el ampersand se usa para hacer que la secuencia de comandos se ejecute por separado de la secuencia de comandos rc.local al bifurcarla. ( http://hacktux.com/bash/ampersand )

over 4 years ago · Santiago Trujillo Denunciar

0

Pon esto en tu crontab

 @reboot /path/to/script

Edítalo usando

 #crontab -e
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda