Python运维-获取当前操作系统的各种信息
生活随笔
收集整理的這篇文章主要介紹了
Python运维-获取当前操作系统的各种信息
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
#通過Python的psutil模塊,獲取當(dāng)前系統(tǒng)的各種信息(比如內(nèi)存,cpu,磁盤,登錄用戶等),并將信息進(jìn)行備份
#?coding=utf-8#?獲取系統(tǒng)基本信息
import?sys
import?psutil
import?time
import?os?#獲取當(dāng)前時間
time_str?=??time.strftime(?"%Y-%m-%d",?time.localtime(?)?)
file_name?=?"./"?+?time_str?+?".log"if?os.path.exists?(?file_name?)?==?False?:os.mknod(?file_name?)handle?=?open?(?file_name?,?"w"?)
else?:handle?=?open?(?file_name?,?"a"?)#獲取命令行參數(shù)的個數(shù)
if?len(?sys.argv?)?==?1?:print_type?=?1
else?:print_type?=?2def?isset?(?list_arr?,?name?)?:if?name?in?list_arr?:return?Trueelse?:return?Falseprint_str?=?"";#獲取系統(tǒng)內(nèi)存使用情況
if?(?print_type?==?1?)?or?isset(?sys.argv,"mem"?)??:memory_convent?=?1024?*?1024mem?=?psutil.virtual_memory()print_str?+=??"?內(nèi)存狀態(tài)如下:\n"?print_str?=?print_str?+?"???系統(tǒng)的內(nèi)存容量為:?"+str(?mem.total/(?memory_convent?)?)?+?"?MB\n"?print_str?=?print_str?+?"???系統(tǒng)的內(nèi)存以使用容量為:?"+str(?mem.used/(?memory_convent?)?)?+?"?MB\n"?print_str?=?print_str?+?"???系統(tǒng)可用的內(nèi)存容量為:?"+str(?mem.total/(?memory_convent?)?-?mem.used/(?1024*1024?))?+?"MB\n"print_str?=?print_str?+?"???內(nèi)存的buffer容量為:?"+str(?mem.buffers/(?memory_convent?)?)?+?"?MB\n"?print_str?=?print_str?+?"???內(nèi)存的cache容量為:"?+str(?mem.cached/(?memory_convent?)?)?+?"?MB\n"#獲取cpu的相關(guān)信息
if?(?print_type?==?1?)?or?isset(?sys.argv,"cpu"?)?:print_str?+=?"?CPU狀態(tài)如下:\n"cpu_status?=?psutil.cpu_times()print_str?=?print_str?+?"???user?=?"?+?str(?cpu_status.user?)?+?"\n"?print_str?=?print_str?+?"???nice?=?"?+?str(?cpu_status.nice?)?+?"\n"print_str?=?print_str?+?"???system?=?"?+?str(?cpu_status.system?)?+?"\n"print_str?=?print_str?+?"???idle?=?"?+?str?(?cpu_status.idle?)?+?"\n"print_str?=?print_str?+?"???iowait?=?"?+?str?(?cpu_status.iowait?)?+?"\n"print_str?=?print_str?+?"???irq?=?"?+?str(?cpu_status.irq?)?+?"\n"print_str?=?print_str?+?"???softirq?=?"?+?str?(?cpu_status.softirq?)?+?"\n"?print_str?=?print_str?+?"???steal?=?"?+?str?(?cpu_status.steal?)?+?"\n"print_str?=?print_str?+?"???guest?=?"?+?str?(?cpu_status.guest?)?+?"\n"#查看硬盤基本信息
if?(?print_type?==?1?)?or?isset?(?sys.argv,"disk"?)?:print_str?+=??"?硬盤信息如下:\n"?disk_status?=?psutil.disk_partitions()for?item?in?disk_status?:print_str?=?print_str?+?"???"+?str(?item?)?+?"\n"#查看當(dāng)前登錄的用戶信息
if?(?print_type?==?1?)?or?isset?(?sys.argv,"user"?)?:print_str?+=??"?登錄用戶信息如下:\n?"?user_status?=?psutil.users()for?item?in??user_status?:print_str?=?print_str?+?"???"+?str(?item?)?+?"\n"print_str?+=?"---------------------------------------------------------------\n"
print?(?print_str?)
handle.write(?print_str?)
handle.close()
轉(zhuǎn)載于:https://blog.51cto.com/codefly/1828837
總結(jié)
以上是生活随笔為你收集整理的Python运维-获取当前操作系统的各种信息的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 暴走英雄坛万年灵芝怎么用 暴走《大事件》
- 下一篇: 叫叫如何退款(叫叫阅读怎么样)