Linux有問必答:如何用Perl檢測Linux的發行版本
提問:我需要寫一個Perl程式,它會包含Linux發行版相關的程式碼。為此,Perl程式需要能夠自動檢測執行中的Linux的發行版(如Ubuntu、CentOS、Debian、Fedora等等),以及它是什麼版本號。如何用Perl檢測Linux的發行版本?
如果要用Perl指令碼檢測Linux的發行版,你可以使用一個名為Linux::Distribution的Perl模組。該模組透過檢查/etc/lsb-release以及其他在/etc下的發行版特定的目錄來猜測底層Linux作業系統。它支援檢測所有主要的Linux發行版,包括Fedora、CentOS、Arch Linux、Debian、Ubuntu、SUSE、Red Hat、Gentoo、Slackware、Knoppix和Mandrake。
要在Perl中使用這個模組,你首先需要安裝它。
在Debian或者Ubuntu上安裝 Linux::Distribution
基於Debian的系統直接用apt-get安裝
$ sudo apt-get install liblinux-distribution-packages-perl
在Fedora、CentOS 或者RHEL上安裝 Linux::Distribution
如果你的Linux沒有Linux::Distribution模組的安裝包(如基於紅帽的系統),你可以使用CPAN來構建。
首先確保你的Linux系統安裝了CPAN
$ sudo yum -y install perl-CPAN
然後,使用這條命令來構建並安裝模組:
$ sudo perl -MCPAN -e 'install Linux::Distribution'
用Perl確定Linux發行版
Linux::Distribution模組安裝完成之後,你可以使用下面的程式碼片段來確定你執行的Linux發行版本。
use Linux::Distribution qw(distribution_name distribution_version); my $linux = Linux::Distribution->new; if ($linux) { my $distro = $linux->distribution_name(); my $version = $linux->distribution_version(); print "Distro: $distro $version\n"; } else { print "Distro: unknown\n"; }
via: http://ask.xmodulo.com/detect-linux-distribution-in-perl.html
相關文章
- Linux有問必答:如何檢查MariaDB服務端版本Linux服務端
- Linux有問必答:如何更新過期版本的UbuntuLinuxUbuntu
- Linux有問必答:Linux上如何檢視某個程式的執行緒Linux執行緒
- Linux有問必答:如何檢查Linux的記憶體使用狀況Linux記憶體
- linux 發行版本資訊的檢視Linux
- Linux有問必答:如何顯示Linux網橋的MAC學習表LinuxMac
- Linux發行版本常見的有哪些?Linux運維Linux運維
- Linux系統發行版本有哪些?Linux
- Linux有問必答:如何在Linux中修改環境變數PATHLinux變數
- Linux有問必答:如何在Linux下重新命名多個檔案Linux
- Linux有問必答:如何為在Linux中安裝兄弟牌印表機Linux
- 在Linux中,有哪幾種linux/unix發行版本?Linux
- Linux有問必答:如何在命令列下壓縮JPEG影像Linux命令列
- 【Linux】Linux版本介紹(核心版本和發行版本)Linux
- Linux 有問必答:如何知道當前正在使用的 shell 是哪個?Linux
- Linux作業系統有哪些發行版本?Linux作業系統
- Linux有問必答:如何修復“sshd error: could not load host key”LinuxError
- Linux 有問必答:如何知道程式執行在哪個 CPU 核心上?Linux
- Linux 有問必答:如何使用yum來下載RPM包而不進行安裝Linux
- 檢視各種Linux發行版本及核心版本 :lsb_release , uname -a ...Linux
- 查詢linux的核心版本和發行版本Linux
- Linux有問必答:如何在命令列建立一個MySQL資料庫Linux命令列MySql資料庫
- 檢視正在執行的 Linux 系統版本Linux
- linux perl 檢視檔案狀態Linux
- Linux作業系統有哪些發行版本?彙總!Linux作業系統
- Linux 有問必答:如何從VirtualBox中從主機訪問NAT客戶機Linux
- 檢視linux的版本號(非linux kernel)Linux
- 典型Linux發行版核心版本Linux
- 6款超高顏值的Linux發行版本!Linux
- 檢視Linux核心版本Linux
- 檢視 linux 版本資訊Linux
- linux檢視程式版本Linux
- (轉)檢視linux版本Linux
- Linux - 檢視系統的版本Linux
- Linux發行版本分為幾類?各版本之間有什麼區別?Linux
- 在Linux中,Linux發行版有哪些?Linux
- linux核心版本本地版本號的檢查Linux
- 檢視ubuntu版本與linux核心版本UbuntuLinux