Detectar o Ubuntu usando o perl

1

Estou trabalhando em um script perl que deve gravar o arquivo de configuração. Eu preciso saber se o script está sendo executado no Ubuntu para definir alguns valores específicos do Ubuntu (basicamente, desative a barra unificada). O script não pode exigir pacotes Perl que não estejam presentes no sistema do usuário.

Como posso verificar se o sistema é Ubuntu ou alguma outra distribuição Linux?

    
por Eugene 22.06.2012 / 01:32

3 respostas

3

Você pode verificar o conteúdo do arquivo /etc/lsb-release .

    
por int_ua 22.06.2012 / 02:46
2

Resposta alternativa: link

use Linux::Distribution qw(distribution_name);
print "Do your stuff here\n" if( distribution_name eq 'ubuntu' );
    
por Barton Chittenden 11.12.2015 / 06:33
0

Você pode verificar a saída de lsb_release sem analisar o arquivo manualmente ou carregar um módulo externo:

#!/usr/bin/perl
# ...
my $id = 'lsb_release -si';
chomp($id);
if($id eq "Ubuntu") {
    # set Ubuntu-specific values
}
# ...
    
por kos 11.12.2015 / 10:20