子程序自動終止 - Linux

Elizabeth avatar
By Elizabeth
at 2019-07-13T16:19

Table of Contents

想問一下
如果說在script中設計一些背景執行的指令
例如
command1 &
command2 &

如何在終止(用ctrl + C)這些script後一併把這個script所觸發的所有子程序殺掉

一般來說都要使用ctrl + Z 後
在kill jobs 才有辦法一次殺光
但ctrl + C則會把背景指令繼續放在背景後

--
Sent from my Windows

--
Tags: Linux

All Comments

Vanessa avatar
By Vanessa
at 2019-07-16T16:58
trap 攔截 INT 信號,用 jobs -p 列出 pid 呼叫 kill
結束
Poppy avatar
By Poppy
at 2019-07-20T11:55
預設背景的命令會收到 sighup ,但少數程式會忽略。
Audriana avatar
By Audriana
at 2019-07-22T01:18
用 while kill %%; do true; done ,jobs 互動性有點問
Kristin avatar
By Kristin
at 2019-07-26T06:03
題,理論上 $() 或 pipe 都是開子程序進行的,但背景程
Oliver avatar
By Oliver
at 2019-07-27T08:39
序是掛在母程序下,所以 sh 是沒辦法用 $(jobs) 拿到
母程序 jobs 的輸出;除非用 jobs -p >job-list
Audriana avatar
By Audriana
at 2019-08-01T08:37
感謝樓上幾位 我試試看這些指令

含sudo 的批次檔可以自動輸入密碼嗎?

Vanessa avatar
By Vanessa
at 2019-07-10T22:22
※ 引述《bfbf510a (超世紀智將)》之銘言: : 我不知道在linux 這「批次檔」要怎麼稱呼。 shell script 你要說批次檔也是可以 有人稱為命令稿 : 我想寫一個批次檔放在桌面,雙擊就可以召喚terminal 執行我寫的指令。可是,一旦是sud : o 開頭的就要我手動輸入密碼才會執行 ...

含sudo 的批次檔可以自動輸入密碼嗎?

Xanthe avatar
By Xanthe
at 2019-07-10T20:10
我不知道在linux 這「批次檔」要怎麼稱呼。 我想寫一個批次檔放在桌面,雙擊就可以召喚terminal 執行我寫的指令。可是,一旦是sud o 開頭的就要我手動輸入密碼才會執行。 譬如我的批次檔是想執行 sudo radeontop 監視gpu 狀況,雙擊之後要輸入密碼,我想省卻 這個步驟 -- 自古紅藍 ...

要灌雙系統 bios讀不到usb

Elizabeth avatar
By Elizabeth
at 2019-07-10T17:12
gigabyte筆電 win10要灌雙系統 用rufus製作好ubuntu的usb後 進bios一直讀不到usb usb部分mbr gpt兩種格式都嘗試過 bios都讀取不到 而gigabyte有內建一個backup程式 用該程式製作的usb可順利被讀取到 所以研判不是讀不到usb 是讀不到ubunt ...

想在raspberry pi 架設minecraft 伺服器

Selena avatar
By Selena
at 2019-07-10T02:23
※ 引述《bfbf510a (超世紀智將)》之銘言: : 平常在x86 架構的電腦上吧伺服器和朋友玩,但主機又不能24小時不關機,太浪費電,所以 : 朋友經常叫我打開伺服器,好麻煩 : 於是便有個大膽的想法,把自己的raspberry pi 3b變成模組伺服器(打算用ubuntu 或 rasp : bian, ...

無限login

Wallis avatar
By Wallis
at 2019-07-10T00:54
各位大大求救 事情這樣的 原本想簡單寫個開機腳本 script寫一寫就丟到/etc/profile裡了 sh script.sh 據了解這會在login後執行 重開機發現需要root權限 原本想說在執行profile應該有權限 就直接改了在/etc/profile的指令 resource script.sh ...