Mark G <[EMAIL PROTECTED]> writes:
> that would be
>
> $pid = open2($wtr, $rdr, 'CPAN::Shell->i');
>
> foreach( @module ){
> print $wtr "$_\n";
> print "shell output: $_\n" while <$rdr>;
> }
Still not able to get this to fly. Probably something wrong here:
cat IPC.pl
#!/usr/local/bin/perl -w
use CPAN;
use IPC::Open2;
my ($wtr, $wdr, @item, $pid);
$pid = open2($wtr, $rdr, 'CPAN::Shell->i');
foreach(@item){
print $wtr "$_\n";
print "shell output: $_\n" while <$rdr>;
}
./IPC.pl
sh: CPAN::Shell-: command not found
With out the single quotes around CPAN::Shell->i:
It runs and kicks out everything on cpan, but doesn't do any of the
read write stuff. Closing with this error:
[...]
28213 items found
Can't exec "1": No such file or directory at
/usr/local/lib/perl5/5.8.0/IPC/Open3.pm line 230. open2: exec of 1
failed at ./IPC.pl line 8
For some reason it seems to be using:
/usr/local/lib/perl5/5.8.0/IPC/Open3.pm
Instead of:
/usr/local/lib/perl5/5.8.0/IPC/Open2.pm
I tried changine over to IPC::Open3
cat IPC.pl
#!/usr/local/bin/perl -w
use CPAN;
use IPC::Open3;
my ($wtr, $wdr, $err, @item, $pid);
$pid = open3($wtr, $rdr, $err, 'CPAN::Shell->i');
foreach(@item){
print $wtr "$_\n";
print "shell output: $_\n" while <$rdr>;
}
This runs but exits instantly with no error and does nothing
noticable.
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]