Bash

在 .sh 中關閉最近打開的程序

  • May 18, 2021

我是 Linux 新手,正在嘗試學習如何自動啟動和關閉程序。最終我想用 cron 執行這個/類似的過程。在這裡,只是測試“簽到”到Google。

gcheck.sh看起來像這樣:

#!/bin/bash/
export DISPLAY=:0
firefox --new-window https://google.com

我已將執行權限添加到gcheck.shwith sudo chmod a+x。我知道這$$會給出腳本的 PID,但是我怎樣才能獲取並殺死剛剛打開的 firefox 視窗的 PID(如果我打開了其他 firefox 視窗)?

先感謝您!

我最終通過以下方式獲得了我想要的行為:

#!/bin/bash/
export DISPLAY=:0
firefox --new-instance -P chemicalwill https://google.com &
PID=$!
sleep 30
kill -15 $PID # kill -9 also works

使用--new-instance一個單獨的配置文件(這裡chemicalwill)允許我在我的預設配置文件下執行其他程序,而不必擔心這個腳本會殺死它們。

添加 & 符號以在後台執行,然後使用 pidof 命令獲取 pid,如程式碼:

(firefox --new-window https://google.com &)&> /dev/null
kill -9 $(pidof "firefox --new-window https://google.com")

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