內存信息
psutil.cpu_times() 使用cpu_times方法獲取cpu完整信息,須要顯示全部邏輯cpu信息(指定變量percpu=True)
psutil.cpu_times().user 獲取單項數據信息,如用戶user的cpu時間比
psutil.cpu_count() 獲取cpu邏輯個數,默認logical=True4
psutil.cpu_count(logical=False) 獲取cpu的物理信息
磁盤信息
psutil.disk_partitions() 使用psutil.disk_partitions方法獲取磁盤完整信息
psutil.disk_usage('/') 使用psutil.disk_usage方法獲取分區(參數)的使用狀況
psutil.disk_io_counters() 使用psutil.disk_io_counters獲取硬盤中的IO個數
psutil.disk_io_counters(perdisk=True) perdisk=True,參數獲取單個分區IO個數
網絡信息
psutil.net_io_counters() 使用Psutil.net_io_counters獲取網絡中的IO信息,默認pernic=False,True時輸出每一個網絡結構的IO信息
其餘系統信息
psutil.users() 使用psutil.users方法返回當前登陸系統的用戶信息
psutil.boot_time() 使用psutil.boot_time方法獲取開機時間,以Linux時間戳格式返回
import psutil,datetime datetime.datetime.fromtimestamp(psutil.boot_time()).strftime("%Y-%m-%d%H:%M:%S") 轉換成天然時間格式
系統進程管理
psutil.pids() 列出全部進程的PID
psutil.Process(*) 實例化一個Process對象,參數爲一進程PID
p=pstuil.Process()
p.name() 進程名
p.exe() 進程bin路徑,windows下爲p.exe
p.cwd() 進程工做目錄絕對路徑,win下爲p,cwd
p.status() 進程狀態
p.create_time() 進程建立時間,時間戳格式
p.uids() 進程uid信息
p.gids() 進程gid信息
p.cpu_affinity() get進程cpu親和度,如要設置進程cpu親和度,將cpu號做爲參數便可
p.momory_info() 進程內存利用率
p.io_counters() 進程IO信息,包括讀寫IO數及字節數
p.connections() 返回打開進程socket的namedutples列表,包括fs,family,laddr等信息
p.num_threads() 進程開啓的線程數
from subprocess import PIPE
p=psutil.Popen(["/usr/bin/python","-c","print('hello')",stdout=PIPE]) 經過psutil的Popen方法啓動的應用程序,能夠跟蹤該程序運行的全部相關信息
p.name() 'python'
p.username() 'root'
p.coummunicate() ('hello\n',None)
p.cpu_times() 獲得進程運行cpu的時間
IPy
IP地址處理模塊
IP('192.168.1').version() 返回IPv4類型
IP('::1').version() 返回IPv6類型
ip=IP('192.168.1.1')
ip.reverseNames() 反向解析地址格式
ip.iptype() 192.168.1.1爲
ip.int() 轉換成整數格式
ip.strHex() 轉換成十六進制
ip.strBin() 轉換成二進制
ip.netmask() 子網掩碼
ip.net() 輸出網絡地址
ip.broadcast() 輸出網絡廣播地址
print(IP(ox8080808)) 十六進制轉換成IP格式
IP與掩碼生產網段格式
print(IP('192.168.1.0').make_net('255.255.255.0'))
print(IP('192.168.1.0/255.255.255.0',make_net=True))
print(IP('192.168.1.0-192.168.1.255',make_net=True))
IP('192.168.1.0/24').strNormal(*) wantprefixlen參數的定義.0:無返回如192.168.1.0;1:prefix格式如192.168.1.0、24;2:decimalnetmask格式如192.168.1.0、255.255.255.0;3:lastIP格式如192.168.1.0-192.168.1.255
多網絡計算方法
IP('10.0.0./24')<IP('12.0.0.0/24') True
'192.168.1.100' in IP('192.168.1.0/24') True
IP('192.168.1.0/24') in IP('192.168.0.0/16') Ture
IP('192.168.0.0/23').overlaps('192.168.1.0/24') 返回1表明重,0表明不重疊python