1. 程式人生 > >程序管理 && 工作管理

程序管理 && 工作管理

停止 數據 images png sign comm 正常的 exe 管理

程序管理

概念

程序program 以二進制程序放置在存儲媒介中(硬盤、光盤、軟盤、磁盤等),以物理文件的形式存在

進程process 程序被觸發後,執行者的權限與屬性、程序的程序代碼與所需數據都被加載到內存中,操作系統會給予這個內存內的一個單元標識符PID。進程,就是運行中的一個程序。

服務daemon 在後臺中一直持續運行的常駐進程稱為服務

fork and exec

fork復制父進程,然後將被復制出來的子進程以exec的方式執行,成為子進程

技術分享

工作管理

概念

前臺 可以出現提示符,可操作的環境。

後臺 不能與用戶互動,放到終端機的後臺只是不可被[ctrl]+c掉,如果斷開遠程連接,該工作依然會被停止

脫機 即使斷開遠程連接,該工作依然不會停止

命令

&

直接將命令丟到後臺中執行

結束出現如下字眼

[1] + Done tar -zpcf /tmp.etc.tar.gz /etc

tar -zpcf /tmp/etc.tar.gz /etc &

tar -zpcvf /tmp/etc.tar.gz /etc > /tmp/log.txt 2>&1 &
stdout與stderr都輸出到log.txt中

tar -zpcvf /tmp/etc.tar.gz /etc &> /tmp/log.txt &

stdout與stderr都輸出到log.txt中

[ctrl]+z

將目前的工作房到後臺中暫停

vim過程中,在一般模式下[ctrl]+z

find /過程中,[ctrl]+z

jobs

查看目前的後臺工作狀態

job [-lrs]

l 除了列出job number與命令串,同時列出PID

r 僅列出正在後臺run的工作

s 僅列出正在後臺暫停stop的工作

+代表最近被放到後臺的工作號碼,-代表最後第二個被放置到後臺的工作號碼,第三個以後的工作,沒有+/-號

fg

將後臺工作拿到前臺來處理

fg %number

number 為jobs查出的工作號碼,%可有可無

fg %1

bg

讓工作在後臺下的狀態由stop變成run

bg %number

number 為jobs查出的工作號碼

kill

管理前臺、後臺、脫機的工作

kill -signal %jobnumber|PID

signal 給予後面的工作一個什麽指令

1 重新讀取一次參數配置文件,類似reload

2 等同於鍵盤[ctrl]+c

9 立刻強制刪除一個工作

15 正常的方式結束

%jobnumber|PID kill一般跟PID,如果是工作管理,則必須有%

killall

依據執行命令的名稱(註:必須與ps aux的command名稱一致)來給予信號管理前臺、後臺、脫機工作

killall [-iIe] -signal [command name]

i 交互式的,如果需要刪除,出現提示符給用戶

I 大寫i,命令名稱忽略大小寫

e exact,後面的command name要一致,但是整個命令不能超過15個字符

kill -9 httpd <==不詢問

killall -i -9 bash <==詢問

nohup

脫機或註銷系統後,該工作依然可以運行。類似於at、cron

nohup [命令與參數] <==在終端機前臺中工作

nohup [命令與參數] & <==在終端機後臺中工作

註:nohup並不支持bash內置的命令,因此,命令必須是外部命令

例:

nohup sleep500.sh

nohup ./sleep500.sh &

程序管理 && 工作管理