in reply to The file I want to open must be determined by a command line argument

@ARGV contains the command line arguments. Thus, make your open statement:

open(FILEHANDLE, "/data/$ARGV[0]/file");
  • Comment on Re: The file I want to open must be determined by a command line argument
  • Download Code

Replies are listed 'Best First'.
Re (tilly) 1: The file I want to open must be determined by a command line argument
by tilly (Archbishop) on Jul 15, 2001 at 02:04 UTC
    Particularly if the filename is determined from the command line, you want to do as perlsyn says and put an error check on the open which specifies all of the following:
    1. What you were doing.
    2. What the filename is.
    3. The contents of $!.
    In this particular case I think it is also probably worthwhile to have a usage check to inform the user if they call the script with an invalid argument. The obvious alternative is to insert a question in the die which asks them if they called it with the argument that they were supposed to.

    There are very few ideas that I consider more important in writing useful code than trying to make your code debuggable when things go wrong...