歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux操作系統學習筆記管理進程和計劃任務(2)

Linux操作系統學習筆記管理進程和計劃任務(2)

日期:2017/2/25 10:32:39   编辑:Linux教程

進程管理

  1、程序與進程的區別

  程序:保存在硬盤、光盤等介質中的可執行代碼和數據;是靜態保存的代碼

   進程:在CPU及內存中運行的程序代碼; 是動態執行的代碼;

父、子進程:每個進程可以創建一個或多個進程

  2、查看進程信息

  1)、ps命令

  用途:查看靜態的進程統計信息

   格式:ps aux ==>顯示系統所有進程

ps -elf ==>以長格式顯示

  2)、top命令

用途:查看動態的進程排名信息

格式:top

  3)、pgrep命令  

   用途:根據特定條件查詢進程PID信息

[root@localhost ~]# pgrep "init"
1
[root@localhost ~]# pgrep -l "log"
2538 syslogd
2541 klogd
3221 login
[root@localhost ~]# pgrep -l -U teacher -t tty1
27483 bash
27584 vim

   4)、pstree命令

  用途:以樹型結構顯示各進程間的關系

   格式:pstree [-aup]

  3、進程的不同啟動方式

   1)手工啟動

    前台啟動:用戶輸入命令直接執行程序

    後台啟動:在命令行尾加入“&”符號(即把這個命令放在後台執行,執行後,會顯示一個後台任務順序號和一個PID號)

[root@localhost ~]# ls -l &
[1] 28453  ==>後台任務序號為1(這個要記住,因為喚醒時要用到),PID號為28453

   2)調度啟動   

使用at命令,設置在某個特定的時間,執行一次任務

使用crontab命令,設置按固定的周期(如每天、每周等)重復執行預先計劃好的任務

3)、進程的前後台調度

  ctrl+Z : 將當前進程掛起,即調入後台並停止執行

  jobs :查看處於後台的任務列表

  fg : 將處於後台的進程恢復到前台運行,需指定任務序號

 4)、終止進程的運行

  Ctrl + C :中斷正在執行的命令

  kill、killall : kill 用於終止指定PID號的進程

        killall 用於終止指定名稱的所有進程

  -9選項用於強制終止

下面是我使用top命令獲取當前正在運行的進程(部分)

這裡有兩條top的進程,是因為我打開了兩個terminal,然後都運行了top命令,若我現在要將另一個終端的top命令殺掉,則如下:

[root@localhost ~]# kill 3792 ==>此時另一個額終端將退出top命令
若殺掉所有正在打開的文本文件:killall -9 geidt

終止進程的運行——pkill命令

[linuxidc@localhost ~]$ w | grep -v "root" ==>查看除root用戶外哪些用戶在使用終端
 11:17:38 up  1:18,  3 users,  load average: 0.14, 0.05, 0.01
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
linuxidc    :0       -                10:01   ?xdm?  18.56s  0.22s /usr/bin/gnome-
linuxidc    pts/1    :0.0             11:17    0.00s  0.02s  0.01s w
linuxidc    pts/2    :0.0             11:17   10.00s  0.01s  0.01s bash
[linuxidc@localhost ~]$ 

上述pts有2個,是因為我打開了兩個terminal,並且都是以linuxidc用戶登錄的,現在我要停止pts/1裡的所有進程:

[linuxidc@localhost ~]$ pkill -9 -t pts/1    ==>這個命令一旦運行,則pts/1這個終端將立即關閉
再次查看時只有一個pts/2了:
[linuxidc@localhost ~]$ w | grep -v "root" 
 11:22:13 up  1:22,  2 users,  load average: 0.09, 0.12, 0.05
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
linuxidc    :0       -                10:01   ?xdm?  18.56s  0.22s /usr/bin/gnome-
linuxidc    pts/2    :0.0             11:17   00.00s  0.01s  0.00s w
[linuxidc@localhost ~]$ 

Copyright © Linux教程網 All Rights Reserved