it runs fine if I execute it from within the directory where it's located ... However, running it by giving the path gives the following error

This, coupled with the fact you've got relative pathnames in your script, is the very first thing I would fix. You need to have an absolute pathname somewhere, relative to which the filenames should be resolved. It either needs to be hardcoded, in a configuration file whose location is fixed, given by the user, or you can get pathnames relative to the current script's location like so:

use warnings; use strict; use FindBin; use File::Spec::Functions qw/catfile/; use Config::Tiny; my $config_file = catfile($FindBin::Bin, 'vnxe_config.conf'); my $array_creds = Config::Tiny->read($config_file) or die "Failed to read $config_file";

Note how you don't need to call ->new if you're also calling ->read, and note how I added a check to make sure ->read isn't returning undef (for example, if it can't find the file). You'll need to use this method of getting an absolute pathname for every filename that you don't want to be resolved relative to the current working directory.

If you still have the same issue after doing this, please let us know.


In reply to Re: Perl script runs fine if exec'd from the directory, but gives error if run outside the directory. by haukex
in thread Perl script runs fine if exec'd from the directory, but gives error if run outside the directory. by pritesh_ugrankar

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.