Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re: execute a perl program

by calin (Deacon)
on Dec 12, 2003 at 16:05 UTC ( [id://314338]=note: print w/replies, xml ) Need Help??


in reply to execute a perl program

By growing level of sophistication:

exec => system

do => require => use

The first set: these calls either replace the current process (exec) or spawn a child process and wait for it (system). The called program can be any executable, they're not limited to Perl. In fact, they're wrappers for the system calls fork and exec, with some added glue.

The second set: these calls are used to import Perl code contained in an external file into the running Perl process.

Take a look at the docs to see what which one does and how the more sophisticated calls can be explained in terms of the lesser ones. Any one of them can be useful in a given situation (sometimes use is not what you want!).

There are more options, especially if you want to communicate with the child process by STDIN/STDOUT/STDERR: open (see also perlopentut), qx// and backticks (in perlop) and the IPC family of modules (IPC::Open2 and IPC::Open3 are useful) etc.

Replies are listed 'Best First'.
Re: Re: execute a perl program
by gri6507 (Deacon) on Dec 12, 2003 at 20:31 UTC
    IN addition to the IPC family of modules, check out the Expect module.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://314338]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others contemplating the Monastery: (6)
As of 2024-04-16 09:44 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found