detecta o nome da interface com perl

1

Eu quero detectar o nome da interface (não posso usar o udev por motivos de hardware) e fazer as coisas de acordo com ele.

Basicamente, essa deve ser uma primeira verificação se o dispositivo Wi-Fi for capaz de "ver" qualquer coisa.

Snippet de código:

my $interface = '/sbin/iwconfig 2>&1|grep wlan|cut -d' ' -f1';
#upping interface
system("ifconfig $interface up");
print "my interface = $interface\n";

No entanto, parece que pode haver uma nova linha armazenada em $ interface "no momento em que tento executar o comando do sistema. Esse é o resultado da execução.

sh: line 2: up: command not found
my interface = wlan0

Perl Version é um 5.8.3 que eu sou forçado a usar para isso.

Como eu armazenaria o nome da interface sem o \ n (se for esse o meu erro)

O Manual me disse para usar backticks para saída de "sistema". PerlFaq

    
por Dennis Nolte 07.07.2015 / 16:38

1 resposta

2

Parece que você precisa chomp a interface $.

    
por 07.07.2015 / 16:47

Tags