Been a while since my last post. Had a laptop die with my last project and still working to get it back. In the meantime I started another.
In my main function I define some arguments with getopt:
The above is missing some optional arguments for brevity. Since there were optional arguments, I found I would need to use a variadic function with something like this:
Looking at these I could see they were very similar with their switch statements. Instead of calling a function from main and then using that function to call the variadic function, it seems there should be a way to combine them. I'm just having trouble getting the logic/syntax for this and not finding much with my google searches.
I'm using getopt() to get command line options.One the optons accepts and argument.The argument is and offset.I was wondering how can I scecify that it's argument is of the type off_t.I've something like this "offset=(off_t)optarg" and it don't work. (1 Reply)
scriptname
i have made a script to perform so tasks and i managed to complete the tasks for all the options
the problem i am facing is that i can run the scripts individually but i would like to make it such that it can accept multiple options and give me the appropriate output
e.g.... (1 Reply)
#!/bin/sh
set -- `getopt "abco:" "$@"`
a= b= c= o=
while :
do
case "$1" in
-a) a=1;;
-b) b=1;;
-c) c=1;;
-o) shift; o="$1";;
--) break;;
esac
shift
done
shift # get rid of --
# rest of script...
# e.g.
ls -l $@ (6 Replies)
I m trying to use getopt
This is my script, but it doesn't take argument in variable,
Please help.
set - - `getopt mscl: $*`
if
then
echo "Exiting...."
exit 2
fi
for i in $*
do
case $i in
-m) MAIL="$i"; shift;;
-s) SCRIPT=$OPTARG; shift;;
-c) COB=$OPTARG; shift;;... (2 Replies)
Hi,
I want to use the getopt function to parse some arguments for a script.
while getopts "i:f:r:" OPTION
do
case $OPTION in
i) iter=$OPTARG;;
f) frame=$OPTARG;;
r) roi=$OPTARG;;
?) echo Usage: ......
exit 2;;
esac
done
However, I... (5 Replies)
Hi All,
An old work friend wrote a script which I've been trying to understand how a section of it currently works and work out how i can add some command line switches which i can use later in the script to append the output depending on the command line arguements.
Currently it works by... (1 Reply)
Discussion started by: mutley2202
1 Replies
LEARN ABOUT SUSE
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.12.1 2007-05-30 AppConfig::Getopt(3)