Мне нужно получить имя дистрибутива Linux из скрипта Python. В модуле платформы есть метод dist
:
import platform
platform.dist()
Но под моим Arch Linux он возвращается:
>>> platform.dist()
('', '', '')
Почему? Как я могу получить имя?
PS. Я должен проверить, основан ли дистрибутив на Debian.
Обновление: я нашел здесь сайт Python, этот dist () устарел, так как 2.6.
>>> platform.linux_distribution()
('', '', '')
uname -a
возвращает на Arch? platform.py - это 1600 строк попытки всего, что они могли придумать, чтобы различать различные системы; это огромная куча эвристик. Похоже, что Arch основан только на себе, а не на другом дистрибутиве: en.wikipedia.org/wiki/Arch_Linux < / а> - person msw   schedule 03.05.2010lsb_release -is
возвращается в Arch? Еслиplatform.dist()
не дает вам пригодных для использования данных, возможно, вы можете вместо этого вызватьsubprocess.check_output(["lsb_release","-is"])
. - person panzi   schedule 13.07.2014