Shell-Script

無法在 Shell 腳本中停止同時執行步驟 - xfce4-terminal 命令

  • November 10, 2020
#!/bin/sh
xfce4-terminal
zenity --info
exit

當腳本執行(通過鍵盤快捷鍵)時,我的 Xfce4 桌面上的預期行為是出現終端視窗。只有當我關閉它時,Zenity視窗才會出現。

通常,這正是發生的情況。但是,如果我首先在桌面上打開一個 Xfce4終端視窗,然後命令主題腳本(同樣,通過鍵盤快捷鍵),另一個終端視窗會出現(如預期的那樣),但同時,Zenity視窗也會出現。這是不受歡迎的行為。

我已經嘗試了很多東西,包括命令wait和附加terminal. &&沒有什麼對我有用。

是什麼導致這種情況發生,我該如何補救?

試試這個,我測試過,看起來不錯。

xfce4-terminal -x bash -c 'trap "zenity --info" EXIT; bash'

執行時,它會打開一個新的 xfce4 終端,並執行以下命令。這個命令是一個 shell trap。這意味著當同一個程序,新打開的終端,收到 EXIT 信號時,將執行引用的命令。最後bash是在設置陷阱之後給出提示,就像在這個文章中一樣。我也嘗試過-H,但沒有按預期工作。

引用自:https://unix.stackexchange.com/questions/618836