ubuntu shell 監控某個程序占用的資源

2022-06-25 04:00:16 字數 790 閱讀 4095

#!/bin/bash

pid=19462//宣告乙個變數,值為你需要監控的程序的pid,這個pid可以通過top命令拿到

interval=10//監控的時間間隔,值為10秒

while true//while迴圈,條件設定為真會一直執行

do//標誌迴圈體開始

echo $(date +"%y-%m-%d %h:%m:%s") >>./log.txt//獲取當前時間輸出到./log.txt檔案中

echo `top -n 1 -b|grep $pid` >>./log.txt//-n 1表示更新的次數設定為1,因為top命令預設是一直重新整理程式的資源使用資訊。-b表示使用批次檔模式,具體含義不是很清除,但是當我把這個指令碼設定為回台執行的時候如果沒有加上這個-b,關閉xshell會話後這個top就獲取不到資訊了,所以這個一定要加上。grep $pid`表示從命令結果中查詢出帶有19462字元的行。然後輸出到log.txt

sleep $interval//睡眠10秒

done//標誌迴圈體結束

可以直接使用./test.sh執行。

如果要後台執行直接在後面加上&是可以的如:。./test.sh &,但是這種方式執行的後台可能你關閉掉xshell當前會話後就被關閉了。

可以使用setsid ./test.sh &來執行指令碼,可以避免會話關閉後指令碼就被強制掛掉的情況。

檢視指令碼是否在執行可以使用:ps -ef|grep test(這裡的test是你自己的指令碼名稱),當你想強制關閉後台執行的指令碼時可以使用kill pid(pid是你用前面的命令查出來的自己的指令碼對應了pid)的方式

Ubuntu shell 程式設計

開頭 bin sh 用來告訴系統,用 bin sh來執行程式。加許可權 chmod x filename 有的使用者還要更改檔案使用者為執行使用者 如 chown hadoop hadoop filename 之後才能用 filename執行 指令碼中可以加注釋,前面用 shell 中命令和系統中輸...

ubuntu shell 程式設計學習

1.開頭 bin bash 這句話必須放在檔案的第一行,符號 用來告訴系統它後面的引數是用來執行該檔案的程式。可以執行echo shell來看你的系統是使用那一類shell,比如ubuntu使用的是 bin bash,則第一行寫成 bin bash 進行shell程式設計時,以 開頭的句子表示注釋,...

初學Ubuntu shell程式設計

1 shell介紹 shell是使用者與核心之間的橋梁,也可以當作linux中的程式語言。shell與使用者互動的模式 在互動環境下,每次執行一條命令 通過編寫shell指令碼的方式 2 shell的編寫 shell直譯器 直譯器 eg bin bash shell的變數型別 環境變數 shell環...