07-18-2007
You can probably test if you receive any command-line arguments. If so, then read using cmdline arguments, otherwise read <>. I can think of a way to make a facade that makes <> read from the @ARGV, but I cannot think of much justification for that complexity for the scenarios I can imagine. Let's try with some simpler methods first, then if they don't satisfy your requirements then I tell you how to do it.
7 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
I run this utility very frequently. This utility displays some 5 options and again inturn these options have few more option to select.
For Eg : It looks like this
1. User Control
2. Locking and Waiting Statistics
3. Block Access
4. Record Locking Table
5. ... (1 Reply)
Discussion started by: ashokm
1 Replies
2. Shell Programming and Scripting
Hello
I have simple script that will accept as arg string like this :
".../foo/blah/,.../.../foo1/,.../blah"
now perl automatically removes the slashes "/" , I can't escape the slashes in the input I have to control on it
so how can I force perl to not touch this slashes?
Thanks ... (5 Replies)
Discussion started by: umen
5 Replies
3. UNIX for Advanced & Expert Users
All of my machines (various open source derivatives on x86 and amd64) store argv above the stack (at a higher memory address). I am curious to learn if any systems store argv below the stack (at a lower memory address).
I am particularly interested in proprietary Unices, such as Solaris, HP-UX,... (9 Replies)
Discussion started by: alister
9 Replies
4. Shell Programming and Scripting
Hi ,
I need to match module data_tx_dig (
I tried matching
~m/module(\s+)ARGV(\s+)\(/ --> (generic code)but is not working.The same is able to match when i provide hardcoded value instead of passing from the command line.
~m/module(\s+)data_tx_dig(\s+)\(/ -->(hardcoded code).Please help me... (8 Replies)
Discussion started by: dll_fpga
8 Replies
5. Shell Programming and Scripting
Hello folks!
While "sedding" about again, I ran into this little conundrum du jour:#!/usr/bin/perl
use strict;
use warnings;
use diagnostics;
@ARGV = ('./afile.dat', './*.txt');
$^I = '';
while (<>)
{
s/Twinkies/Dinner/g;
print;
}When run, perl complains,...but, of... (1 Reply)
Discussion started by: LinQ
1 Replies
6. Shell Programming and Scripting
Hello folks!
While "sedding" about again, I ran into this little conundrum du jour:#!/usr/bin/perl
use strict;
use warnings;
use diagnostics;
@ARGV = ('./afile.dat', './*.txt');
$^I = '';
while (<>)
{
s/Twinkies/Dinner/g;
print;
}When run, perl complains,...but, of... (2 Replies)
Discussion started by: LinQ
2 Replies
7. Shell Programming and Scripting
I am running a perl script and reading the arguments passed to the script as below..... resembles more arguments.
java weblogic.WLST /web/update.py 34 56 ....
I am trying to print the arguments passed to the update.py script as below
for arg in sys.argv:
print "other args:", arg... (1 Reply)
Discussion started by: mohtashims
1 Replies
LEARN ABOUT CENTOS
appconfig::getopt
AppConfig::Getopt(3) User Contributed Perl Documentation AppConfig::Getopt(3)
NAME
AppConfig::Getopt - Perl5 module for processing command line arguments via delegation to Getopt::Long.
SYNOPSIS
use AppConfig::Getopt;
my $state = AppConfig::State->new(\%cfg);
my $getopt = AppConfig::Getopt->new($state);
$getopt->parse(@args); # read args
OVERVIEW
AppConfig::Getopt is a Perl5 module which delegates to Johan Vroman's Getopt::Long module to parse command line arguments and update values
in an AppConfig::State object accordingly.
AppConfig::Getopt is distributed as part of the AppConfig bundle.
DESCRIPTION
USING THE AppConfig::Getopt MODULE
To import and use the AppConfig::Getopt module the following line should appear in your Perl script:
use AppConfig::Getopt;
AppConfig::Getopt is used automatically if you use the AppConfig module and create an AppConfig::Getopt object through the getopt() method.
AppConfig::Getopt is implemented using object-oriented methods. A new AppConfig::Getopt object is created and initialised using the new()
method. This returns a reference to a new AppConfig::Getopt object. A reference to an AppConfig::State object should be passed in as the
first parameter:
my $state = AppConfig::State->new();
my $getopt = AppConfig::Getopt->new($state);
This will create and return a reference to a new AppConfig::Getopt object.
PARSING COMMAND LINE ARGUMENTS
The "parse()" method is used to read a list of command line arguments and update the state accordingly.
The first (non-list reference) parameters may contain a number of configuration strings to pass to Getopt::Long::Configure. A reference to
a list of arguments may additionally be passed or @ARGV is used by default.
$getopt->parse(); # uses @ARGV
$getopt->parse(@myargs);
$getopt->parse(qw(auto_abbrev debug)); # uses @ARGV
$getopt->parse(qw(debug), @myargs);
See Getopt::Long for details of the configuartion options available.
A Getopt::Long specification string is constructed for each variable defined in the AppConfig::State. This consists of the name, any
aliases and the ARGS value for the variable.
These specification string are then passed to Getopt::Long, the arguments are parsed and the values in the AppConfig::State updated.
See AppConfig for information about using the AppConfig::Getopt module via the getopt() method.
AUTHOR
Andy Wardley, <abw@wardley.org>
COPYRIGHT
Copyright (C) 1997-2007 Andy Wardley. All Rights Reserved.
Copyright (C) 1997,1998 Canon Research Centre Europe Ltd.
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
ACKNOWLEDGMENTS
Many thanks are due to Johan Vromans for the Getopt::Long module. He was kind enough to offer assistance and access to early releases of
his code to enable this module to be written.
SEE ALSO
AppConfig, AppConfig::State, AppConfig::Args, Getopt::Long
perl v5.16.3 2007-05-30 AppConfig::Getopt(3)