亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
最近訪問板塊 發(fā)新帖
查看: 3009 | 回復(fù): 0
打印 上一主題 下一主題

進(jìn)程控制 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2009-10-13 14:25 |只看該作者 |倒序?yàn)g覽

            ※使用ps命令
            ※在后臺(tái)運(yùn)行進(jìn)程 ,并且使用ps命令監(jiān)視正在運(yùn)行的進(jìn)程的狀態(tài)
            ※運(yùn)行一個(gè)后臺(tái)進(jìn)程并使其在你退出系統(tǒng)后不被掛起。
            ※ 切換后臺(tái)進(jìn)程到前臺(tái)運(yùn)行。
            ※掛起一個(gè)進(jìn)程。
            ※停止進(jìn)程的運(yùn)行。
            14.1 ps 命令
                  語(yǔ)法:
                  ps [-efl] 報(bào)告進(jìn)程的狀態(tài)
                  例子:
                  $ ps
                  PID TTY TIME COMMAND
                  1324 ttyp2 0:00 sh
                  1387 ttyp2 0:00 ps
                  $ ps –ef
                  UID PID PPID C STIME TTY TIME COMMAND
                  Root 0 0 0 Jan 1 ? 0:20 swapper
                  Root 1 0 0 Jan 23 ? 0:00 init
                  Root 2 0 0 Jan 23 ? 0:16 vhand
                  User3 1324 1 3 18:03:21 ttyp2 0:00 -sh
                  User3 1390 1324 22 18:30:23 ttyp2 0:00 ps –ef
            系統(tǒng)中每個(gè)進(jìn)程在啟動(dòng)的時(shí)候都會(huì)被分配一個(gè)唯一的確認(rèn)號(hào)碼,這個(gè)號(hào)碼就叫進(jìn)程ID(PID)。ps
            命令會(huì)顯示當(dāng)前運(yùn)行中(或睡眠中)的進(jìn)程的信息,包括每個(gè)進(jìn)程的PID和每個(gè)進(jìn)程父進(jìn)程的PID(PPID)。通過PID和PPID號(hào),你可以追蹤你系統(tǒng)中任何進(jìn)程的起源。ps命令也會(huì)報(bào)告每個(gè)進(jìn)程的屬主和是進(jìn)程在哪個(gè)終端上執(zhí)行的。
            ps 命令可以不帶參數(shù)執(zhí)行,結(jié)果會(huì)報(bào)告你當(dāng)前的終端線索的進(jìn)程信息。
            -e選項(xiàng)會(huì)報(bào)告系統(tǒng)中每一個(gè)進(jìn)程的信息,而不僅僅是你自己運(yùn)行的進(jìn)程信息。 -f
            和-l選項(xiàng)會(huì)報(bào)告長(zhǎng)的(long),或完全的(full)包含其他的細(xì)節(jié)的列表。
            注意:ps 命令執(zhí)行時(shí)會(huì)集中使用CPU,你也許會(huì)注意到當(dāng)這個(gè)命令執(zhí)行的時(shí)候要過一會(huì)才有響應(yīng)
            14.2 后臺(tái)進(jìn)程
                  語(yǔ)法:
                  命令>cmd.out &
                  例子:
                  $ grep user * > grep.out &
                  194
                  $ ps
                  PID TTY TIME COMMAND
                  164 ttyp2 0:00 sh
                  194 ttyp2 0:00 grep
                  195 ttyp2 0:00 ps
            命令> cmd.out &
            ※使命令在后臺(tái)執(zhí)行。
            ※當(dāng)后臺(tái)任務(wù)開始后立刻返回提示符。
            ※重定向命令的輸出,這樣命令的輸出就不會(huì)影響當(dāng)前屏幕的顯示。
            ※退出系統(tǒng)會(huì)中止后臺(tái)運(yùn)行的進(jìn)程。用戶會(huì)在第一次試圖退出時(shí)收到一個(gè)警告:“There are running
            jobs”。用戶須再次鍵入Exit 或ctrl+d來中止這個(gè)線索。
            一些命令會(huì)執(zhí)行很長(zhǎng)的時(shí)間,例如在全部的磁盤上查找單個(gè)文件,或使用一個(gè)文本處理工具來格式化和打印一個(gè)手冊(cè)。UNIX操作系統(tǒng)允許你啟動(dòng)一個(gè)很消耗時(shí)間的程序,并且在讓它在后臺(tái)運(yùn)行,在后臺(tái),UNIX會(huì)讓這個(gè)程序繼續(xù)執(zhí)行。和其他的立即執(zhí)行的命令不同的是,shell不會(huì)等待后臺(tái)程序執(zhí)行完畢,而會(huì)立即返回提示符,這樣你就可以繼續(xù)其他的工作。
            在一個(gè)命令的末尾使用一個(gè)“&”符號(hào)可以使一個(gè)命令在后臺(tái)運(yùn)行。通常需要重定向后臺(tái)運(yùn)行的程序的輸出,以免后臺(tái)命令的輸出影響你當(dāng)前的終端線程。如果沒有重定向輸出,后臺(tái)命令會(huì)使用標(biāo)準(zhǔn)輸出,也就是會(huì)輸出到你的終端上。
            由于shell控制標(biāo)準(zhǔn)輸入,而后臺(tái)運(yùn)行的命令不能夠從標(biāo)準(zhǔn)輸入接收數(shù)據(jù),因此,任何后臺(tái)運(yùn)行的命令要求輸入都必須使用輸入重定向從一個(gè)文件得到輸入數(shù)據(jù)。
            當(dāng)一個(gè)命令被放在后臺(tái)執(zhí)行,如果設(shè)置了monitor選項(xiàng)(set -o
            moniotr),shell會(huì)報(bào)告命令的任務(wù)號(hào)和進(jìn)程ID,任務(wù)號(hào)定義了與你終端線索相聯(lián)系的任務(wù)。進(jìn)程ID為UNIX分配給每一個(gè)被執(zhí)行的進(jìn)程的唯一的號(hào)碼。Monitor選項(xiàng)會(huì)導(dǎo)致在后臺(tái)進(jìn)程完成之后會(huì)在終端上顯示一條信息:
            [1] + Done grep user * > grep.out & 提示進(jìn)程執(zhí)行完畢
            由于在后臺(tái)運(yùn)行的命令不和鍵盤通信,所以你不能夠通過中止鍵,ctrl +
            c來中斷一個(gè)后臺(tái)進(jìn)程,后臺(tái)進(jìn)程可以通過kill命令來中斷或通過退出系統(tǒng)來中斷。
            注意: 一個(gè)后臺(tái)進(jìn)程都要明確地重定向輸入和輸出。
            注意: 一個(gè)后臺(tái)任務(wù)可能包含多個(gè)命令,只要將這些命令用括號(hào)括起來(命令1,命令2,命令3),然后操作系統(tǒng)就會(huì)作為一個(gè)任務(wù)執(zhí)行這些命令。
            14.3 將任務(wù)放在后臺(tái)/前臺(tái)運(yùn)行
                  jobs ?????顯示當(dāng)前運(yùn)行的任務(wù)
                  ctrl + z ???將當(dāng)前前臺(tái)運(yùn)行的程序掛起。
                  fg [%number]? 將指定任務(wù)號(hào)的任務(wù)放在前臺(tái)運(yùn)行
                  fg [%string] ?將以指定字符串開頭的命令放在前臺(tái)運(yùn)行
                  bg [%number] ?將指定任務(wù)號(hào)的任務(wù)放在后臺(tái)運(yùn)行
                  bg [%number] ?將指定任務(wù)號(hào)的任務(wù)放在后臺(tái)運(yùn)行 
            在POSIX shell
            中,進(jìn)程可以被放在前臺(tái)或后臺(tái)運(yùn)行。如果你在前臺(tái)正在運(yùn)行一個(gè)冗長(zhǎng)的進(jìn)程,你可以向這個(gè)進(jìn)程發(fā)送一個(gè)susp(掛起)信號(hào),這個(gè)信號(hào)通常被設(shè)置為ctrl
            + z.。這個(gè)掛起字符通常是在登錄時(shí)通過.prifile指定的,語(yǔ)法為:stty susp ^Z
            。這個(gè)動(dòng)作會(huì)暫時(shí)停止你的前臺(tái)進(jìn)程,同時(shí)出現(xiàn)一個(gè)shell提示符。你然后可以使用bg命令來將這個(gè)命令放到后臺(tái)運(yùn)行。
            同樣,如果你有一個(gè)在后臺(tái)運(yùn)行的進(jìn)程,你想要把它放在前臺(tái)運(yùn)行,你可以使用fg命令,然后前臺(tái)進(jìn)程會(huì)控制你的終端,直到運(yùn)行完畢或者被掛起。
            14.4 nohup 命令
                  語(yǔ)法:
                  nohup 命令 (使命令不被掛起)。
                  例子:
                  $ nohup cat * > bigfile &
                  $ ctril + d
                  login: user3
                  passwd :
                  $ ps -ef |grep cat
                  UID PID PPID COMMAND
                  User3 972 1 cat * >bigfile &
            UNIX系統(tǒng)提供一個(gè)nohup命令來使命令不被掛起。nohup命令是一組特殊unix命令的一個(gè),這組命令被稱為 prefix
            command(前綴命令),這個(gè)命令在其他命令之前使用。記住,退出系統(tǒng)通常都會(huì)中止后臺(tái)的進(jìn)程。但是如果一個(gè)后臺(tái)命令以nohup開頭,你就可以放心地退出系統(tǒng),系統(tǒng)會(huì)繼續(xù)完成你的進(jìn)程。即使這個(gè)程序的父shell不再運(yùn)行。注意,當(dāng)nohup命令的父進(jìn)程中止后,這個(gè)命令會(huì)被一號(hào)進(jìn)程(init)所收養(yǎng)。你可以再次登錄觀察nohup命令執(zhí)行后的狀態(tài)和結(jié)果。
            當(dāng)使用nohup的時(shí)候,用戶通常都要重定向輸出到文件中。如果用戶沒有指定一個(gè)輸出文件,nohup會(huì)自動(dòng)地重定向輸出到nohup.out文件中。注意,nohup.out文件中會(huì)同時(shí)有標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯(cuò)誤信息。
            14.5 nice 命令
                  語(yǔ)法:
                  nice [-N] 命令 使一個(gè)命令以更低的優(yōu)先級(jí)運(yùn)行
                  N 為一個(gè)1到19的號(hào)碼
                  例子:
                  $ nice -10 cc myprog.c -o myprog
                  $ nice -5 sort * > sort.out &
            UNIX操作系統(tǒng)是一個(gè)分時(shí)的系統(tǒng),進(jìn)程的優(yōu)先級(jí)決定程序使用系統(tǒng)資源的頻率。優(yōu)先級(jí)低的任務(wù)比優(yōu)先級(jí)高的用戶存儲(chǔ)系統(tǒng)的頻率更少。例如:你的終端線索有相對(duì)更高的優(yōu)先級(jí)得到提示和系統(tǒng)響應(yīng)。
            nice命令是另一個(gè)前綴命令,能讓你降低一個(gè)程序的優(yōu)先級(jí)。這個(gè)命令對(duì)運(yùn)行不要求立即完成的命令的時(shí)候有用處,例如格式化整個(gè)幫助手冊(cè)。
            語(yǔ)法是:
            nice [-increment] 命令
            increment是一個(gè)1到19的整數(shù)。默認(rèn)值為10。一個(gè)進(jìn)程的nice值越高,它的優(yōu)先權(quán)就越低。nice值不是一個(gè)絕對(duì)的優(yōu)先級(jí)修改量。
            你可以通過ps -l來瀏覽進(jìn)程的優(yōu)先級(jí)。優(yōu)先級(jí)在字段PRI那一欄顯示。更高的優(yōu)先級(jí)任務(wù)的優(yōu)先值更低。nice 值在字段NI下顯示。
            在大多數(shù)的UNIX系統(tǒng)中,前臺(tái)進(jìn)程默認(rèn)nice值為20,后臺(tái)進(jìn)程的值為24。最大值為39,所以最大的增量為19和15。更多的增量都不會(huì)增加超過39。而負(fù)的增長(zhǎng)只能root使用。
            14.6 kill 命令
                  語(yǔ)法:
                  kill [-s signal_name] PID [PID....] 發(fā)送一個(gè)信號(hào)給指定的進(jìn)程。
                  例子:
                  $ cat /usr/share/man/cat1/ * > bigfile1 &
                  1.995
                  $ cat /usr/share/man/cat2/ * > bigfile2 &
                  2.996
                  $ kill 995
                  [1] -Terminated cat /usr/share/man/cat1/* > bigfile1 &
                  $ kill -s INT %2
                  [2] + interrupt cat /usr/share/man/cat2/ * >bigfile2 &
                  $ kill -s KILL 0
            kill
            命令能被用來中斷任何命令,其中包括nohup,和后臺(tái)命令。kill發(fā)送一個(gè)信號(hào)給一個(gè)進(jìn)程。更具體的說,kill發(fā)送一個(gè)信號(hào)給一個(gè)進(jìn)程。進(jìn)程收到其中的大多數(shù)的信號(hào)后,默認(rèn)的行動(dòng)都是死亡。發(fā)送信號(hào)者必須是進(jìn)程的屬主;kill不能夠被用來殺掉其他用戶的進(jìn)程除非使用kill的是超級(jí)用戶。
            在UNIX系統(tǒng)中,實(shí)際上是不可能真正地殺死一個(gè)進(jìn)程。大多數(shù)的UNIX系統(tǒng)所做的只是要求進(jìn)程自己結(jié)束。默認(rèn)的情況是,kill發(fā)送TERM信號(hào)(軟中斷信號(hào))給指定的進(jìn)程。但進(jìn)程通常不會(huì)捕捉或者會(huì)忽略這個(gè)信號(hào)。而有其他的信號(hào),如上表列出的信號(hào),能夠通過-s選項(xiàng)指定。UNIX系統(tǒng)提供的,確保kill執(zhí)行成功的,最方便的辦法就是KILL信號(hào)(kill
            signal)
            要想殺死一個(gè)進(jìn)程,你可以指明進(jìn)程ID或任務(wù)號(hào)。當(dāng)指明任務(wù)號(hào)的時(shí)候,必須使用%作為前綴。如果指明的進(jìn)程號(hào)為0,會(huì)終止所有的與當(dāng)前shell相關(guān)的所有的進(jìn)程,包括當(dāng)前的shell。
            注意: 命令kill –l 會(huì)列出所有支持的signal-name(信號(hào)名)的值。當(dāng) –l
            選項(xiàng)被使用的時(shí)候,每個(gè)信號(hào)的符號(hào)名稱都會(huì)輸出到標(biāo)準(zhǔn)輸出上:
            $ kill –l
            HUP INT QUIT ILL TRAP ARRT EMT FPE KILL BUS SEGV SYS PIPE ALRM TERM
            USI USR2 PWR VTALRM PROP IO WINCH STOP TSTP CONT TTIN TTOU URG LOST


本文來自ChinaUnix博客,如果查看原文請(qǐng)點(diǎn):http://blog.chinaunix.net/u2/84425/showart_2069336.html
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP