Estoy tratando de correr
WID=`xdotool search "Inbox" | head -1`
xdotool windowactivate $WID
xdotool key Up
cada vez stdout de
$ CAMEL_DEBUG=all evolution
cede "inicio inactivo".
He creado este script, que hace lo que quiero, pero solo una vez, no lo hace cada vez que se muestra el "inicio inactivo", sino solo una vez y se detiene. No sé cómo bash lo suficientemente bueno 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.

breakno es suficiente, entonces es probable que sea un problema de almacenamiento en búfer. (Para la mayoría de los comandos, la salida se almacena en búfer a menos que vaya a un terminal).expectSe puede utilizar una herramienta para sortear estos problemas. Echa un vistazo a eso.Podrías probar algo un poco más complejo. Primero redirigir la salida de
evolutiona un archivo:Entonces haz un sin fin
whilebucle que lee el archivo y reacciona si se encuentra una cadena:fuente