
各ワークスペースでいくつかのプログラムを開くスタートアップ スクリプトがあります。次のワークスペースでプログラムを開き続ける前に、最初のワークスペースでいくつかの操作を実行したいです。続行を促すプロンプトを表示するにはどうすればよいでしょうか? 使用してみましたが、停止せず、プロセスをバックグラウンドに移動するためにgnome-terminal -e "bash -c \"read -s -p 'Press enter to continue...'\""
使用していないにもかかわらず、スクリプトは実行し続けます。&
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
答え1
についてはよくわかりませんgnome-terminal
が、すでに実行中のターミナルから を起動するとxfce4-terminal
、すぐにスタンドアロン プロセスに分岐し、呼び出し元のシェルに制御を戻すことができます。つまり、新しいシェルが実行されている間も、以前のシェルは新しいコマンドを受け入れます。
同じように動作すると思いますgnome-terminal
。そのため、スクリプトは停止して待機しないようです。
代わりに標準を使用することもできますxterm
。これは、自身をフォークせず、呼び出しスクリプトをブロックします。見た目はそれほどきれいではありませんが、単純なブロックアラートとしては十分です。
gxmessage
、xmessage
またはもご覧くださいzenity
。