Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask

Command line argument Error..

by khjayantasingh (Initiate)
on Jan 31, 2013 at 10:59 UTC ( #1016288=perlquestion: print w/ replies, xml ) Need Help??
khjayantasingh has asked for the wisdom of the Perl Monks concerning the following question:

I want to Give a command line argument in a Perl script. #!/usr/bin/perl print "@ARGV\n";
################ I give a command line argument
perl net/*/*
But It gives an error...
perl: No match.
If i give argument like
perl 'net/*/*' or perl "net/*/*"
It is working find... but problem is I cannot use like this in my script.. So please tell me why this script is giving an error... and any means to make it work..

Comment on Command line argument Error..
Select or Download Code
Replies are listed 'Best First'.
Re: Command line argument Error..
by roboticus (Chancellor) on Jan 31, 2013 at 11:14 UTC


    It sounds like your command shell is mangling the arguments for you (most do in one way or another).

    Most shells will try to expand the argument list for you when they see a wildcard. Putting quotes around the arguments tells the shell to pass the argument to the script as written. Example:

    $ perl t* t.100, t.100.md5, t.10.md5, $ perl 't*' t* $ cat use strict; use warnings; print join(", ", @ARGV),"\n";

    In the first run, perl didn't get t*, the shell expanded t* to a list of all matching files and gave that list to the perl script. For the second run, I quoted the argument, so perl actually sees t*.

    I'd go further, but your question is somewhat difficult for me to interpret: "but problem is I cannot use like this in my script". I can't tell what's giving you a problem from this point. Care to elaborate?


    When your only tool is a hammer, all problems look like your thumb.

Re: Command line argument Error.. (shell)
by Anonymous Monk on Jan 31, 2013 at 11:10 UTC

    perl isn't giving that error, your shell is

    Try  ls net/*/* and you'll likely get the same message

Re: Command line argument Error..
by vinoth.ree (Prior) on Jan 31, 2013 at 11:17 UTC

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://1016288]
Approved by vinoth.ree
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (15)
As of 2015-12-01 13:04 GMT
Find Nodes?
    Voting Booth?

    My keyboard shows this many letters:

    Results (10 votes), past polls