Existe-t-il un handle/handle de fichier pour la sortie d'une commande système que j'exécute en Perl?Filehandle pour la sortie de la commande système en Perl
6
A
Répondre
1
12
Voici un exemple d'établir des tuyaux entre votre script et d'autres commandes, en utilisant la forme de open
3 arguments:
open(my $incoming_pipe, '-|', 'ls -l') or die $!;
open(my $outgoing_pipe, '|-', "grep -v '[02468]'") or die $!;
my @listing = <$incoming_pipe>; # Lines from output of ls -l
print $outgoing_pipe "$_\n" for 1 .. 50; # 1 3 5 7 9 11 ...
deux arg 'open' est vieux et crufty (et potentiellement dangereux). [Utilisez plutôt la version à trois arguments] (http://www.modernperlbooks.com/mt/2010/04/three-arg-open-migrating-to-modern-perl.html) – Daenyth