Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid

find out the way program was called.

by coldhawk (Monk)
on Apr 09, 2004 at 00:39 UTC ( #343808=perlquestion: print w/replies, xml ) Need Help??
coldhawk has asked for the wisdom of the Perl Monks concerning the following question:

I was just thinking, what would be the best way to regonize how is the program being called. What i real mean is, that im trying to find out if it's exec directly or is another perl program using it with require, and do actions based on that. I couldn't find any portable solutions to this, maybe i was searching with wrong search words, but anyway. i would appreciate of any help you may give.

Replies are listed 'Best First'.
Re: find out the way program was called.
by tilly (Archbishop) on Apr 09, 2004 at 01:14 UTC
    if ($0 eq __FILE__) { print "Called directly\n"; } else { print "Loaded in a library\n"; }
Re: find out the way program was called.
by Zaxo (Archbishop) on Apr 09, 2004 at 00:47 UTC

    If the program knows its own name, $0 may help.

    After Compline,

Re: find out the way program was called.
by esskar (Deacon) on Apr 09, 2004 at 01:22 UTC
    perldoc -f caller is maybe also a good hint.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://343808]
Approved by TStanley
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (4)
As of 2017-11-21 18:41 GMT
Find Nodes?
    Voting Booth?
    In order to be able to say "I know Perl", you must have:

    Results (309 votes). Check out past polls.