SPUG: regular expression difficulty, plus compiled perl
Skahan, Vince
Vince.Skahan at pss.boeing.com
Tue Mar 28 09:18:36 CST 2000
I'd use dirname() rather than roll my own. Any reason why doing it the
unix way doesn't suffice ?
The following worked for me on my NT system using ActiveState
perl build 522...
#!perl
#
# see page 328 of the PerlCookbook
#
use File::Basename;
$dir=dirname($0);
print "I'm called $0\n";
print "I live in $dir\n";
When I save the script as c:\tmp\foo.pl and run it, it reports back
output that looks like:
I'm called C:\TMP\foo.pl
I live in C:\TMP
--
-------- Vince.Skahan at boeing.com ------ http://bcstec.ca.boeing.com/~vds/ -------------
Boeing Shared Services Group - Technical Services
outside Boeing - http://www.halcyon.com/vince
> ----------
> From: Todd Wells[SMTP:toddw at wrq.com]
> Sent: Monday, March 27, 2000 8:20 PM
> To: 'spug-list at pm.org'
> Subject: SPUG: regular expression difficulty, plus compiled perl
>
> I'm using ActiveState Perl on NT4 and trying to set a variable to be equal
> to the directory name that the script was ran in.
>
> So, I look at $0 which contains the name of the script I ran... in this case
> "D:\PERL\COUNTP~1.PL"
>
> But when I try to strip the filename off the end, I can't seem to do it.
>
> print "First: $0\n";
> ($test1 = $0)=~ m#.*\\#;
> #$test1 =~ s/(.*\\)/$1/; # I tried this too, and it didn't work
> either.
> print "Second: $test1\n";
>
> The output:
> First: D:\PERL\COUNTP~1.PL
> Second: D:\PERL\COUNTP~1.PL
>
> What's going on here? Is the .* just being _really_ greedy? I'm expecting
> $test1 to be "D:\PERL\"
> I know this is silly, but I can't figure out the problem here.
>
> BTW, someone at the last SPUG meeting mentioned they were playing around
> with compiled Perl using ActiveState. I can't seem to find any specifics on
> how to do this. Perlfaq3 mentions it, but gives no specifics on how to
> actually do it, nor can I find any at Malcolm Beattie's site.
>
> - Todd
>
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> POST TO: spug-list at pm.org PROBLEMS: owner-spug-list at pm.org
> Seattle Perl Users Group (SPUG) Home Page: http://www.halcyon.com/spug/
> SUBSCRIBE/UNSUBSCRIBE: Replace "action" below by subscribe or unsubscribe
> Email to majordomo at pm.org: "action" spug-list your_address
>
>
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
POST TO: spug-list at pm.org PROBLEMS: owner-spug-list at pm.org
Seattle Perl Users Group (SPUG) Home Page: http://www.halcyon.com/spug/
SUBSCRIBE/UNSUBSCRIBE: Replace "action" below by subscribe or unsubscribe
Email to majordomo at pm.org: "action" spug-list your_address
More information about the spug-list
mailing list