
estoy tratando de correr
WID=`xdotool search "Inbox" | head -1`
xdotool windowactivate $WID
xdotool key Up
cada vez que sale estándar de
$ CAMEL_DEBUG=all evolution
produce "arranque inactivo".
Se me ocurrió este script, que hace lo que quiero, pero solo una vez, no lo hace cada vez que se muestra "iniciar inactivo", sino solo una vez y se detiene. No conozco bash lo suficientemente bien como para obligarlo a repetirse sin cesar.
exec 3< <(CAMEL_DEBUG=all evolution)
while read line; do
case "$line" in
*"starting idle"*)
echo "'$line' contains staring idle"
WID=`xdotool search "Inbox" | head -1`
xdotool windowactivate $WID
xdotool key Up
break
;;
*)
echo "'$line' does not contain starting idle."
;;
esac
done <&3
exec 3<&-
Gracias.
Respuesta1
El break
comando finaliza el while
bucle. Déjalo caer.
Respuesta2
Podrías probar algo un poco más complejo. Primero redirija la salida evolution
a un archivo:
CAMEL_DEBUG=all evolution > tmpout
Luego haga un while
bucle sin fin que lea el archivo y reaccione si se encuentra una cadena:
#!/usr/bin/env bash
while true; do
while read line; do
case "$line" in
*"starting idle"*)
echo "'$line' contains staring idle"
WID=`xdotool search "Inbox" | head -1`
xdotool windowactivate $WID
xdotool key Up
break
;;
*)
echo "'$line' does not contain starting idle."
;;
esac
done < tmpout
done