
Tengo un script de inicio que abre algunos programas en cada espacio de trabajo. Quiero hacer algunas cosas en el primer espacio de trabajo antes de continuar abriendo los programas en los siguientes espacios de trabajo. ¿Cómo puedo solicitar continuar? Intenté usarlo gnome-terminal -e "bash -c \"read -s -p 'Press enter to continue...'\""
pero no se detiene, el script continúa ejecutándose aunque no he usado &
para mover el proceso a segundo plano.
wmctrl -n 2
sleep 2
wmctrl -s 0
sleep 1
if command -v "firefox" > /dev/null 2>&1; then
firefox &
fi
gnome-terminal -e "bash -c \"read -n1 -sp 'Press enter to continue...'\""
# sleep 30
wmctrl -s 1
sleep 1
if command -v "firefox" > /dev/null 2>&1; then
firefox --new-window &
fi
Respuesta1
No tengo idea acerca de gnome-terminal
, pero si inicio xfce4-terminal
desde una terminal que ya se está ejecutando, inmediatamente se bifurca en un proceso independiente, de modo que el control puede devolverse al shell que llama, es decir, el shell anterior aceptará nuevos comandos mientras que el nuevo está funcionando también.
Creo que gnome-terminal
se comporta de la misma manera, razón por la cual su guión no parece detenerse y esperar.
En su lugar, podría utilizar el estándar xterm
, que no se bifurca y, por lo tanto, bloquea el script de llamada. No parece tan bonito, pero funcionará como una simple alerta de bloqueo.
También puedes echarle un vistazo a gxmessage
, xmessage
o zenity
.