[問題] 關閉程式問題

看板Linux作者 (momo)時間9年前 (2016/03/28 17:38), 9年前編輯推噓5(5017)
留言22則, 6人參與, 最新討論串1/1
小弟有個關閉程式的問題想請教一下 目前寫了一個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

03/28 17:42, , 1F
sleep啊= =
03/28 17:42, 1F
Sleep不是只能暫停嗎? 我試了可以跑後面的但是視窗還在 有辦法關system monitor方法嗎?

03/28 18:43, , 2F
gnome-system-monitor -r & 送背景
03/28 18:43, 2F
背景也不行因為要看到之後printscreen在繼續下面程式 ※ 編輯: maxding0430 (114.136.103.24), 03/28/2016 18:52:50

03/28 18:57, , 3F
送背景後 sleep 一段時間跑抓圖然後 kill 掉啊
03/28 18:57, 3F
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

03/28 19:28, , 4F
下次執行再抓pid再kill啊
03/28 19:28, 4F
不行要寫成startup一開機就執行script不能在動機台所以不能再ps然後kill 要全部自動 化 ※ 編輯: maxding0430 (114.136.103.24), 03/28/2016 19:52:01

03/28 20:07, , 5F
為什麼不行?只要開程式當下就有pid了
03/28 20:07, 5F

03/28 20:35, , 6F
大概語法這樣:
03/28 20:35, 6F

03/28 20:35, , 7F
gnome-system-monitor -r &
03/28 20:35, 7F

03/28 20:35, , 8F
sleep 10
03/28 20:35, 8F

03/28 20:36, , 9F
kill %1
03/28 20:36, 9F

03/28 20:37, , 10F
寫成 script 檔案就可以了,記得第一行 #!/bin/bash
03/28 20:37, 10F

03/28 21:45, , 11F
當然是寫在script裡面用ps抓pid去kill啊、很簡單的應用
03/28 21:45, 11F

03/28 21:46, , 12F
如 kenduest 寫的、後面用ps去抓pid就好了
03/28 21:46, 12F

03/28 21:47, , 13F
pid=`ps aux|grep "gnome-system-monitor"|grep -v "grep"|
03/28 21:47, 13F

03/28 21:47, , 14F
awk '{print $2}'`
03/28 21:47, 14F

03/28 21:47, , 15F
kill -9 $pid
03/28 21:47, 15F

03/28 21:48, , 16F
類似這樣組合寫成一支script就可以了
03/28 21:48, 16F

03/28 22:01, , 17F
送背景以後用 $! 就可以拿剛剛執行的 pid
03/28 22:01, 17F

03/28 22:26, , 18F
不是用 job id 來處理就好?kill %1 簡單快速
03/28 22:26, 18F

03/28 23:15, , 19F
這個case用job id相當的簡潔明瞭
03/28 23:15, 19F

03/28 23:26, , 20F
疑、不知道可以這樣、又學到一招、感謝^^
03/28 23:26, 20F

03/28 23:35, , 21F
$!我剛有google到、但是實際測試%1好像沒作用?
03/28 23:35, 21F

03/28 23:41, , 22F
那就用 pkill '^gnome-system-monitor$' 替代比較快
03/28 23:41, 22F
文章代碼(AID): #1M-FkKyM (Linux)
文章代碼(AID): #1M-FkKyM (Linux)