Tentative d'intégration du doublage Perl suivant dans un script shell. Ce code fonctionne à l'intérieur d'un script Perl mais pas en tant que doublure exécutée à partir d'un script shell.Comment puis-je effectuer un ping sur un hôte avec un doubleur Perl avec Net :: Ping?
J'ai essayé de remplacer $host
par un vrai nom d'hôte sans succès.
#!/bin/ksh
hosts="host1 host2 host3"
PERL=/usr/bin/perl
# Check to see if hosts are accessible.
for host in $hosts
do
#echo $host
$PERL -e 'use Net::Ping; $timeout=5; $p=Net::Ping->new("icmp", $timeout) or die bye ; print "$host is alive \n" if $p->ping($host); $p->close;'
done
Pourquoi utilisez-vous perl au lieu de simplement 'ping'? –
Je l'ai intégré dans un script shell déjà écrit que je ne tiens pas à porter. Cela constitue un interligne simple, pratique et rapide (c'est-à-dire qui ne se bloque pas) qui fonctionne sur plusieurs plates-formes. –