Perl- Tester le résultat d'un grep
Bonjour ;
Mon problème est dans le teste du résultat grep or j'ai écrit le bout de code suivant:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| #!/usr/bin/perl
open (SORTIE, ">res.txt") or die ("probleme d'ouverture");
if (-e "/etc/sysctl.conf"){
$cmd=" grep net.ipv4.icmp_echo_ignore_broadcasts /etc/sysctl.conf ";
if ($cmd ne ""){
exec "$cmd 1>res.txt ";
print SORTIE exec($cmd);
}
else {
print SORTIE "La chaine n'existe pas dans le fichier\n";
}}
else {
print SORTIE " Le fichier n'existe pas\n ";}
close(SORTIE); |
Lorsque je lance ce script avec "net.ipv4.icmp_echo_ignore_broadcasts" qui ne se trouve pas dans le fichier /etc/sysctl.conf , j'ai l'impression au vu du fichier res.txt qu'il rentre toujours dans le bloc if.
Pourriez vous m'éclairer svp?
(P.S: soyez indulgents si j'ai écrit de grosses bêtises, je débute...)