[問題] pipe 及 監控的問題

看板Linux作者 (エニシ 縁)時間14年前 (2011/07/14 11:26), 編輯推噓0(007)
留言7則, 2人參與, 最新討論串1/1
1.我想做一個雙向的pipe,如果是單向的很簡單用A|B就可以把A的stdout傳給B的stdin了 但如果想要再把B的stdout傳給A的stdin,請問要怎麼做呢? 是要用一個buffer(FIFO)檔案嗎? 2.另外因為實驗的需要,要監控一個程式執行了多久,及是否跑完了。 人工可以用ps -e|grep去找,但是現在 我想寫一個shell,它裡面會執行一個程式abc,我會用abc&的方式去執行他。 然後我需要監控說,一、它跑完了沒,然後做下一個動作。 二、它跑了多久,來決定我是否要砍掉(kill)它。 請問如是的shell script要如何寫呢? 目前大致上想到的是sudo script如下 abc& while [ abc exists ]; do if [ its run time > threshold ]; then kill it break fi done next task 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.169.176.53

07/14 11:38, , 1F
jobs , kill, sleep
07/14 11:38, 1F

07/14 12:08, , 2F
abs&
07/14 12:08, 2F

07/14 12:08, , 3F
sleep time
07/14 12:08, 3F

07/14 12:09, , 4F
jobs abc
07/14 12:09, 4F

07/14 12:11, , 5F
[ "$?" -eq 0 ] && kill -9 $(jobs -p abc)
07/14 12:11, 5F

07/14 12:12, , 6F
next task
07/14 12:12, 6F

07/25 17:20, , 7F
非常感謝
07/25 17:20, 7F
文章代碼(AID): #1E7c7mwm (Linux)
文章代碼(AID): #1E7c7mwm (Linux)