I guess fpmurphy alludes specifically to ksh so you may be lucky there.
Option processing "by hand" is not such a big deal, either.
When it comes to single dash vs double dash for long options, option clustering vs no option clustering, requiring and/or permitting an equals sign between a long option and its value, etc, you're in a twisty maze of conflicting standards, all equally non-standard. Personally I'd recommend double dash for long options. Permitting equals signs between options and their values would complicate the code somewhat, as would option clustering for short options (i.e. allowing -au user as a shorthand for -a -u user).
PS. I just whipped this up on the fly, but $dmr knows I've written enough of these to have some routine. It even seems to work, based on quick informal testing.
Last edited by era; 04-06-2008 at 02:46 AM..
Reason: P.S.
Hi
i have part of the scripts below ,getopt for -h or ? not working for me.
can anybody tell me if this sytax right or wrong.
#!/usr/bin/ksh
program=$(basename $0)
#####################################################################################
function usageerr
{
RC=1
... (3 Replies)
Hi,
My script will take a input file as a parameter(which is not mandatory) and also an option.
ksh my_script.sh <inputfile>
The option -n I have given is no way related to the input file.
Now the problem here is when i execute the script specifying the input file and the option(the way... (4 Replies)
Is there a restriction on levels of using 'getopts' ? I have several scripts, each of which requires an option as the first parameter .
If I call one prg separately it works fine, but when one prg calls another prg and passes the option on the called prg, then the called prg
seems not to process... (3 Replies)
I am having some trouble/questions with getopts that I can't find any solid info on with google
I need it to parse things of the syntax of:
-r # # # -f -c
with as many repeats as possible, and it should catch erroneous commands also, but continue going...
my first question is, -r... (3 Replies)
First off, I apologize for my lack of knowledge. I realize my problem will probably seem pretty basic to everyone, but I've been at this for several hours now and I've gotten nowhere. I would contact my professor, but it is too late for that.
Anyway, I'm trying to write a function called... (1 Reply)
Hi all...
I have been looking on here for the past few days for an answer and Im gonna have to break down and ask.
I just learned about the getopts command last week so have been trying to utilize it in my scripts.
Below, I am trying to set up a case structure for options using getopts.... (1 Reply)
while getopts v OPTION
do
case $OPTION in
v) echo "Hello" ;;
*) exit 1;;
esac
done
Suppose I have script tmp.sh
Whose Signature is tmp.sh <fixed_argument>
When I run the script with tmp.sh -v "file", it echoes a hello but, when I try the other way i.e, tmp.sh... (1 Reply)
Hi,
Does anyone have an example of parsing command line arguments similar to how getopts parse command line arguments?
I am looking at a getopts alternative because I want to have the same parsing on the subroutine/function in the script.
For example, I want to be able to do test.ksh -p 1... (4 Replies)
Hi All,
I am writing a script to pass the getopts argument to the function which I have. But it as soon as I execute the script, the argument is taking it as blank. I tried using multiple way to check but its not working.
Can someone please let me know what wrong in this code.
function1()... (4 Replies)
Hi. Can somebody please show me an example of how to use getopts to assign a variable if it's been passed into the script but to set a default if no value has been passed in? And also how to handle a param with multiple values ... so a sub parse (can I use a function for this?)?
Here's my code... (1 Reply)
Discussion started by: user052009
1 Replies
LEARN ABOUT XFREE86
shift
shift(1) User Commands shift(1)NAME
shift - shell built-in function to traverse either a shell's argument list or a list of field-separated words
SYNOPSIS
sh
shift [n]
csh
shift [variable]
ksh
* shift [n]
DESCRIPTION
sh
The positional parameters from $n+1 ... are renamed $1 ... . If n is not given, it is assumed to be 1.
csh
The components of argv, or variable, if supplied, are shifted to the left, discarding the first component. It is an error for the variable
not to be set or to have a null value.
ksh
The positional parameters from $n+1 $n+1 ... are renamed $1 ..., default n is 1. The parameter n can be any arithmetic expression that
evaluates to a non-negative number less than or equal to $#.
On this man page, ksh(1) commands that are preceded by one or two * (asterisks) are treated specially in the following ways:
1. Variable assignment lists preceding the command remain in effect when the command completes.
2. I/O redirections are processed after variable assignments.
3. Errors cause a script that contains them to abort.
4. Words, following a command preceded by ** that are in the format of a variable assignment, are expanded with the same rules as a vari-
able assignment. This means that tilde substitution is performed after the = sign and word splitting and file name generation are not
performed.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWcsu |
+-----------------------------+-----------------------------+
SEE ALSO csh(1), ksh(1), sh(1), attributes(5)SunOS 5.10 15 Apr 1994 shift(1)