Detener el script hasta que presione enter

Detener el script hasta que presione enter

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-terminaldesde 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-terminalse 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, xmessageo zenity.

información relacionada