IOMux::Open - simulate the open() function
use IOMux::Open qw( -| |- |-| < > >> tcp); # pipe for reading my $who = $mux->open('-|', 'who', 'am', 'i'); print <$who>; # two-way connection (like IPC::Open3) my $echo = $mux->open('=|', 'cat'); # file my $pw = $mux->open('<', '/etc/passwd'); my @noshell = grep /\:$/, <$pw>;
This module is a simple wrapper to bring various alternative connection implementations closer to normal Perl. It also saves you a lot of explicit require (use) lines of code.
use
With this module, code is simplified. For instance, the real logic is:
use IOMux::Pipe::Read; my $who = IOMux::Pipe::Read->new ( run_shell => [ 'who', 'am', 'i' ] ); $mux->add($who); print <$who>;
In the short syntax provided with this module:
use IOMux::Open '-|'; my $who = $mux->open('-|', 'who', 'am', 'i'); print <$who>;
You only need to use one ::Open module with some parameter, in stead of requiring all long names explicitly. As you can see, the object gets added to the mux as well.
::Open
Available MODES are
-| IOMux::Pipe::Read |- IOMux::Pipe::Write |-| IOMux::IPC |=| IOMux::IPC (with errors) > IOMux::File::Write >> IOMux::File::Write (appendinf) < IOMux::File::Read
This module is part of IOMux distribution version 1.01, built on January 15, 2020. Website: http://perl.overmeer.net/CPAN
Copyrights 2011-2020 by [Mark Overmeer <markov@cpan.org>]. For other contributors see ChangeLog.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://dev.perl.org/licenses/
To install IOMux, copy and paste the appropriate command in to your terminal.
cpanm
cpanm IOMux
CPAN shell
perl -MCPAN -e shell install IOMux
For more information on module installation, please visit the detailed CPAN module installation guide.