av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

找出UNIX中最費CPU的進程

瀏覽:4日期:2024-06-10 17:19:45

多用戶的Unix計算機系統在運行過程中,有時會感覺到運算速度突然慢下來,有時甚至連從鍵盤輸入字符也得過好久才會有反應。有經驗的人一定會知道,這時計算機中一定在運行一個非常耗費CPU的進程。這樣的進程有時是某個人在執行一個很占CPU的程序,有時則可能是系統中出了意外情況,系統本身在進行處理。無論是哪種情況,系統管理員都應及時找出這樣的進程,并做出相應的處理。

UNIX雖然提供了“acct等一系列記賬程序,但這些程序只能在進程結束后才能顯示運行時間和占用CPU時間等信息,不能實時計算單位時間內哪一個進程占用CPU時間最多。

為此本人用shell語言編寫了一段程序,利用UNIX提供的一些實用程序,實現了上述功能。

此段程序中包含ps、cut、diff等UNIX實用程序,下面先簡單介紹一下這些實用程序的功能。

ps:用來顯示當前系統中進程的有關信息。用-e參數則顯示系統中所有進程的信息。使用-f參數則顯示各進程完整的信息;

cut:用于以列為單位對文件進行剪裁。參數“-c -15,33-表示把輸入文件每行前15個字符及第33個字符以后直到行尾的所有字符放入輸出文件;

echo:用于向屏幕上顯示提示信息;

sleep:可以讓shell程序等待若干秒,然后再執行后面的語句;

diff:用于對兩個文件進行比較,不同之處則顯示出來;

sort:可對文件中的各行進行排序,排序結果可顯示出來;

grep:可用來找出文件中滿足一定條件的行。參數“^表示找出第一列為空格的各行;

|:為管道的符號,可實現把前面命令的輸出作為后面命令輸入的作用,這樣就可省略生成中間文件的步驟,提高執行效率;

>:表示對輸出進行重定向,把本來應顯示在屏幕上的東西輸出到文件中。

程序內容如下:

ps -ef|cut -c -15,33->tt1

echo Please wait a while...

sleep 20

ps -ef|cut -c -15,33->tt2

echo Attention !

echo

diff tt1 tt2|cut -c 2->tt3

sort tt3|grep ^ |cut -c -83|grep -v 0:00

echo

echo That is ok!

rm tt1 tt2 tt3

程序首先取得系統中所有進程的信息并把其中有用的字段放入臨時文件tt1中。接著讓程序等待20秒(時間可依具體情況進行調整)。

然后再一次取得所有進程的信息,并把所有的字段放入臨時文件tt2中。

對兩個臨時文件進行比較,找出20秒前后信息不同的那些進程(其中就有消耗CPU時間已經發生了變化的進程)。

去掉進行比較時產生的“>和“<,把結果放入臨時文件tt3中。

對tt3中的內容進行排序,把耗費CPU時間發生變化的同一進程的前后信息排在一起。grep“^則是用來去掉執行此shell程序時產生的一些中間命令進程的信息。

再用cut刪去每行中過長的進程信息,使輸出更加清晰。而grep -v 0:00則用來去掉20秒前后只出現一次的進程。程序執行至此,在20秒前后耗費CPU時間不同的進程就顯示在屏幕上了,從中可以很容易地找出所要找的進程。最后為了不在系統中留下無用的垃圾文件,還要把三個臨時文件全都刪去。

標簽: Unix系統
主站蜘蛛池模板: 国产福利在线 | 欧美在线网站 | 亚洲国产欧美91 | 欧美精品一区二区三区在线播放 | 1000部精品久久久久久久久 | 日韩av一区二区在线观看 | 天堂在线免费视频 | 亚洲国产精品一区二区第一页 | 国产探花在线精品一区二区 | 国产精品1区2区 | 国产欧美日韩一区二区三区在线观看 | 日韩成年人视频在线 | 欧美日韩久久精品 | 九九99九九精彩46 | 北条麻妃视频在线观看 | 欧美日韩一卡二卡 | 伦理午夜电影免费观看 | 成人精品在线观看 | 欧美日韩综合精品 | 免费精品视频在线观看 | 91精品国产麻豆 | 日日夜夜av| 国产免费一区 | 一级在线视频 | 九九九色| 91精品久久久久 | 成年无码av片在线 | 亚洲男人天堂2024 | 亚洲欧洲国产视频 | 亚洲欧美在线观看 | 国产99视频精品免费播放照片 | 久久一级免费视频 | 国产精品1区2区3区 欧美 中文字幕 | 久草免费在线视频 | 久久国内 | 91国内精品久久 | 青青久在线视频 | 81精品国产乱码久久久久久 | 国产91视频免费 | 天天操夜夜骑 | 2023亚洲天堂 |