GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Source(3) User Contributed Perl Documentation Source(3)

Shell::Source - run programs and inherit environment changes

 use Shell::Source;
 my $csh = Shell::Source->new(shell => "csh", file => "stuff.csh");
 $csh->inherit;
 print STDERR $csh->output;
 print $csh->shell;

The Shell::Source allows arbitrary shell scripts, or other programs for that matter, to be run and their environment to be inherited into a Perl program.

Begin by creating a Shell::Source object, and specifying the shell it will use.

If the shell is unknown to the module, you will also need to specify how to run the shell in such a way that the output is a series of lines of the form NAME=value. For example, to run a csh script:

 my $csh = Shell::Source->new(shell => "csh",
                              file  => "stuff.csh",
                              run   => "csh -f -c 'source [[file]]; env' |");

However, for known shells this is not required. Note that [[file]] will be replaced with the filename of the program you want to run.

Output from running the program is returned from $csh->output.

Changes made to the environment by running the program may be inherited by calling $csh->inherit.

The environment changes are available as a hash from $csh->env, or in Bourne shell syntax from $csh->shell.

Huh?

Version 0.01 - 2nd August 2001

Created - Wednesday 26th November 1997 09:29:31 pm

Copyright 1997-2001, Paul Johnson (pjcj@cpan.org)

This software is free. It is licensed under the same terms as Perl itself.

The latest version of this software should be available from my homepage: http://www.pjcj.net

2001-08-02 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.