... i want to be able to specify the "-i" or "-e" or any additional arguments, wherever i want on the command line. how is this possible?
i need this to be portable as i'll be using it across many platforms. ...
The *nix body of code suggests that options should come before arguments. So I am not surprised that you will not find support in standard utilities that goes beyond that.
However, there are other codes that do support mixed arguments and options. For example:
1) code getopt from util-linux at kernel.org, possibly in a repository (it was in Debian, from which I installed it): util-linux - Wikipedia, the free encyclopedia
A stand-alone version of source is available at: Getopt | frodo.looijaard.name
Because ultimately it's a binary:
it should be able to be compiled anyplace there is a building environment.
2) A Google code, shFlags:
Quote:
shFlags is a Unix shell library to simplify the handling of command-line flags.
That seems like a lot of extra work just to allow the mix of options and arguments -- probably too much for me in most instances -- but if you are sufficiently motivated, it can be done. In essence, you are rolling your own command-line processing with the support from those 2 projects (probably among many others about which I do not know).
I need to parse parameters but the arguments could be NULL,example:
> cat getopts.sh
while getopts "a:b:" opt 2>/dev/null
do
case "${opt}" in
a) echo "A:${OPTARG}" ;;
b) echo "B:${OPTARG}" ;;
*) exit 1 ;;
esac
done
> getopts.sh -a TEST1 -b TEST2... (5 Replies)
Hi, I am a new member to unix.com.
Actually I am facing a problem with getopts. In my script i have used getopts to parse the parameters. when i use the script as shown below its working fine:
find_status -p all ### where find_status is a script name.
But even if I pass more than one... (3 Replies)
i was going through the man page of getopts
this particular section is not clear to me can anyone please
clarify in a little detail so that i can understand the concept
MANPAGE::
Since getopts affects the current shell execution environ-
ment, it is generally provided as a... (7 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)
How do I get the getopts command to display whats written at my help option if no option is types in? For example,
myscript.sh -h
will bring up my help option, however, I also want
myscript.sh
to do the same!
#!/bin/bash
while getopts :abh opt
do case "$opt" in... (2 Replies)
Hi everyone
I want to know how can we pass multiple argument in getopts
suppose
PARAMS="abcd"
while getopts ${PARMS} FLAG
do
case ${FLAG} in
(a)
(b)
(c)
(d)
esac (6 Replies)
In the below code
while getopts :rfw:d:s:a: options
do
case "$options" in
r) echo reverse;;
f) echo forward;;
w) window=$OPTARG;;
d) duration=$OPTARG;;
s) search=$OPTARG;;
a) value=$OPTARG;;
*) help; exit;;
esac
done
... (2 Replies)
Hi, I got some error when I try to write content from file store into array then for each word that separate by space use identify function to display image information.here is my code
#!/usr/bin/perl -w
open(FILE,'transfer_file_perl.txt') or die "$!";
my $line = <FILE>;#because it is one... (2 Replies)
Hi,
I have written a script to take command line arguments using geopts.This is the code.
#!/bin/sh
# The usage of this script.
usage="Usage is $0"
usage="$usage "
usage="$usage "
usage="$usage "
# Use the getopt utility to set up the command line flags.
set -- `/usr/bin/getopt... (4 Replies)