看板 Linux 關於我們 聯絡資訊
小弟有個關閉程式的問題想請教一下 目前寫了一個script是要開啟system monitor 內容為gnome-system-monitor -r 但是不關閉system monitor後面的指令就無法執行 所以想請教要如何過幾秒後關閉system monitor 繼續跑我的script 由於是要自動化所有無法手動關閉 謝謝麻煩了 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.136.103.24 ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1459157908.A.F16.html
filiaslayers: sleep啊= =03/28 17:42
Sleep不是只能暫停嗎? 我試了可以跑後面的但是視窗還在 有辦法關system monitor方法嗎?
Bencrie: gnome-system-monitor -r & 送背景03/28 18:43
背景也不行因為要看到之後printscreen在繼續下面程式 ※ 編輯: maxding0430 (114.136.103.24), 03/28/2016 18:52:50
Bencrie: 送背景後 sleep 一段時間跑抓圖然後 kill 掉啊03/28 18:57
Kill了但是下次執行pid變了script就不能寫定killxxxx ※ 編輯: maxding0430 (114.136.103.24), 03/28/2016 18:59:46 ※ 編輯: maxding0430 (114.136.103.24), 03/28/2016 19:00:20 ※ 編輯: maxding0430 (114.136.103.24), 03/28/2016 19:05:38
zhucc: 下次執行再抓pid再kill啊03/28 19:28
不行要寫成startup一開機就執行script不能在動機台所以不能再ps然後kill 要全部自動 化 ※ 編輯: maxding0430 (114.136.103.24), 03/28/2016 19:52:01
Darkautism: 為什麼不行?只要開程式當下就有pid了 03/28 20:07
kenduest: 大概語法這樣: 03/28 20:35
kenduest: gnome-system-monitor -r & 03/28 20:35
kenduest: sleep 10 03/28 20:35
kenduest: kill %1 03/28 20:36
kenduest: 寫成 script 檔案就可以了,記得第一行 #!/bin/bash 03/28 20:37
zhucc: 當然是寫在script裡面用ps抓pid去kill啊、很簡單的應用 03/28 21:45
zhucc: 如 kenduest 寫的、後面用ps去抓pid就好了 03/28 21:46
zhucc: pid=`ps aux|grep "gnome-system-monitor"|grep -v "grep"| 03/28 21:47
zhucc: awk '{print $2}'` 03/28 21:47
zhucc: kill -9 $pid 03/28 21:47
zhucc: 類似這樣組合寫成一支script就可以了 03/28 21:48
Bencrie: 送背景以後用 $! 就可以拿剛剛執行的 pid 03/28 22:01
kenduest: 不是用 job id 來處理就好?kill %1 簡單快速 03/28 22:26
soem: 這個case用job id相當的簡潔明瞭 03/28 23:15
zhucc: 疑、不知道可以這樣、又學到一招、感謝^^ 03/28 23:26
zhucc: $!我剛有google到、但是實際測試%1好像沒作用? 03/28 23:35
kenduest: 那就用 pkill '^gnome-system-monitor$' 替代比較快 03/28 23:41