http://www.perlmonks.org?node_id=1001288


in reply to Noob Question

Hello there! Well, there are a lot of ways you could go about this. I'll list three very easy to implement ones, each with a different approach

One, simply cd into the script directory and run your script from there.

cd C:\\Scripts

Two, use File::Basename so you can build an absolute path to your test1.txt file using dirname:

#!/usr/bin/env perl use File::Basename; use strict; use warnings; @ARGV = (dirname(__FILE__)."/test1.txt"); while(<>) { chomp; print "It was $_ that in some stooge like file!\n"; }

The above code works because your test1.txt file is located in the same directory as your script and therefore, you can use dirname with the __FILE__ variable(or $0) and simply tack on the filename to get a path to your text file.

Three, you could use an absolute path:

#!/usr/bin/env perl use strict; use warnings; @ARGV = ("C:/Scripts/test1.txt"); while (<>) { chomp; print "It was $_ that I saw in some stooge-like file!\n"; }

As you can see, there is more than one way to do it. There are still more ways than I have listed, but they should be sufficient :).

Replies are listed 'Best First'.
Re^2: Noob Question
by nick1984 (Novice) on Oct 28, 2012 at 20:51 UTC
    Thank you very much all very good ways of resolving my issue!