我必須從Python腳本中獲取Linux發行版名稱。dist平臺模塊中有一個方法:
import platform platform.dist()
但在我的Arch Linux下它返回:
>>> platform.dist() ('', '', '')
為什么?我怎么能得到這個名字?
PS。我必須檢查分發是否是基于Debian的。
更新:我在這里找到了Python站點,自2.6以來,dist()已被棄用。
>>> platform.linux_distribution() ('', '', '')
解決方案
這對我在Ubuntu上有用:
('Ubuntu', '10.04', 'lucid')
然后我常常strace找出平臺模塊正在做什么來查找分布,這是這部分:
open("/etc/lsb-release", O_RDONLY|O_LARGEFILE) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=102, ...}) = 0 fstat64(3, {st_mode=S_IFREG|0644, st_size=102, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb76b1000 read(3, "DISTRIB_ID=Ubuntu\nDISTRIB_RELEAS"..., 8192) = 102 read(3, "", 4096) = 0 read(3, "", 8192) = 0 close(3) = 0
所以,
/etc/lsb-release
包含這些信息,來自Ubuntu的Debian基礎文件包。
總結
以上所述是小編給大家介紹的python獲取Linux發行版名稱,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
