Linux的進程管理和做業控制

 read命令的用法:linux

read 選項 變量  #read實現的做用是將從鍵入的字符串賦值給變量shell

-p 在鍵入命令以前先顯示一段字符vim

-t 等待用戶輸入的超時時間數組

-a 將鍵入的數據賦值給數組bash

 

變量的拓展:ide

$?:用於存放最後一次命令執行的返回值,將每一個變量做爲一個字段添加分隔符ui

$*:用於引用全部變量的參數,將全部的字段看做爲一個字段加入分隔符spa

$@:用於引用全部變量的參數
$#
:顯示命令項腳本傳入參數的個數
$0
:顯示腳本的當前名字以及路徑orm

$$:查看自身命令的進程
$!
:查看最後一次執行在後臺的進程號
$_
:引用最後一次執行完畢的結果

進程

腳本退出命令exit

exit + 返回值   #從腳本退出並將返回值設定爲後跟的數

 

一個簡單的用於腳本生成的腳本:

文件名 nsh

  1 #!/bin/bash 

  2 #

  3 ls $1 &> /dev/null && vim $1

  4 ls $1 &> /dev/null ||cat> $1 <<EOF

  5 #!/bin/bash

  6 #:Title:

  7 #:Synopsis:

  8 #:DateTime:`date +"%F %T"`

  9 #:Version:Unknow

 10 #:Author: redhat_hu

 11 #:Option:None

 12

 13 EOF

 14 vim +8 $1

 15 chmod +x $1

使用方法:nsh 腳本名

說明:

1.       shbang

2.       判斷新建的腳本名是否存在,若存在,則使用vim打開此文件

3.       若不存在,則向其中導入4~11行內容

4.       導入後使用vim打開新腳本,並將光標定位在新腳本的第八行

5.       新腳本退出vim後賦予可執行權限

 

linux進程管理:

進程:是計算機分配系統資源的基本單位

linux中進程優先級分爲:靜態優先級 100~139(可人爲控制),動態優先級 0~99(有kernel控制)。(優先級越小則越高)

對靜態有限的控制由nice值來實現,nice取值範圍-20~19與靜態優先級100~139一一對應,進程啓動默認nice0,給出讓出cpu使用權的進程,nice值上升,優先級降低。

 

進程查看相關命令:

ps命令

ps option

-e 顯示全部進程

-a 顯示與終端無關的進程

-x 顯示與終端有關的進程

-u 顯示進程的發起者

-o 自定義顯示哪些字段

經常使用ps aux

 

top option以動態的形式顯示當前進程的數據

-b batch mode以文本的方式顯示進程數據

-d delay time動態的刷新時間

-n 顯示次數

 

pgrep option processname

無選項默認輸出進程pid

-u 查看進程發起者的uid

-g 查看進程發起者的gid

 

pidof processname

查看某進程的進程號

 

pstree 顯示全部進程的進程樹

-p 顯示pid

 

與進程顯示相關的字段

PID:進程號

PPID:父進程號(全部進程都有init進程派生)

TTY:標示進程與哪一個終端相關

STAT:進程的狀態

       D:不可中斷的睡眠狀態,例如I/O操做中

       R:運行/就緒態

       S:可中斷的睡眠態

       Tstop中止態

       Z:殭屍態(進程結束可是還沒有釋放資源)

一、  當前進程處於結束中,其父進程正在爲其清理佔用資源

二、  子進程結束時發現父進程在其以前結束,沒法清理釋放佔用資源

TIME:進程得到CPU的時間

COMMAND:進程的發起命令

%CPU:進程的cpu佔用率

%MEN:進程的內存佔用率

VSZ:進程在虛擬內存集中的佔用大小

RSS:進程在物理內存集中的佔用大小

 

進程間通訊機制:IPC主要分爲共享內存和信號量的進程間發送。

 

信號量控制命令kill

kill option SIG pid

-l 查看全部的信號量

信號量:

1SIGHUP    若進程是服務發送此信號量重載配置文件

2SIGINT    結束當前做業ctrl+c

9SIGKILL   強行殺死進程

15SIGKTERM    結束進程,讓進程自行關閉

18SIGCONT      將中止的進程繼續

19SIGSTOP       將運行進程中止

 

killall 進程名

殺死全部與進程名相關的進程

 

nice值的修改

nice命令啓動進程時制定nice

nice –n 數值 命令  設定命令運行時初始值

renice 數值 進程號      設定運行中的進程nice

 

做業控制:

做業分爲前臺做業和後臺做業,以是否佔用shell來區分。

將命令啓動即放入後臺執行:

命令 &

nohup命令能夠實現關閉終端後命令仍執行

 

前臺、後臺切換

ctrl+z 將當前做業送入後臺並中止

fg 做業號 #將做業從後臺調入前臺

bg 做業號 #將前臺做業調入後臺並運行,將後臺做業從中止轉爲運行

kill %做業號 #殺死做業 (默認15

 

free顯示內存信息(默認以K爲單位)

-m 以兆爲單位顯示

 

uptime顯示啓動時間以及平均負載

 

vmstat 時間(秒) 顯示內存信息,按秒數刷新

相關文章
相關標籤/搜索