Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW

Re: routine as subroutine and on command line

by count0 (Friar)
on Jan 18, 2002 at 19:39 UTC ( #139836=note: print w/ replies, xml ) Need Help??

in reply to routine as subroutine and on command line

It sounds like you're crying out for modules (or better, object classes ;)

If you need to be calling only certain subroutines from the command line, this is the ideal (imo) way to go.
Instead of, make it This will also require changing parts of it (adding a 'package' line to the top, at least) to turn it into its own package.

Here's a simple example:

package AvgRoutines; sub avg3 { # ... code ... } 1;
See Simple Module Tutorial for a simple introduction to modules, if you need it. For a more technical primer, see perlmod.

Now, with it being its own module you can call just the sub you need from the command line *or* from other scripts (by use'ing it).

cat some_file_holding3numbers.txt | perl -I'.' -MAvgRoutines -pe 'AvgRoutines::avg3($_)' > avg.txt
See perlrun for any help with those command line switches.

Comment on Re: routine as subroutine and on command line
Select or Download Code

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (9)
As of 2015-12-01 13:38 GMT
Find Nodes?
    Voting Booth?

    My keyboard shows this many letters:

    Results (11 votes), past polls