getopts question


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting getopts question
# 1  
Old 01-05-2009
getopts question

I am trying to set up prompts when you don't enter the right information or dont enter the information at all, when executing a script. Below is the question that i am asking and i am not sure how to set up the if statements to make sure that the user enters the name, cpu's, memory and ip. I was told that getopts with a cease statement might be usefull, but im not sure how to apply it. Any help would be greatly appreciated...

NAME=$1
NCPUS=$2
MEMORY=$3
IP=$4
MACHINENAME=`hostname`
MASTERHOST=svvnyc702

echo "Do you wish to proceed with the creation of UAT ZONE zone-${NAME}, CPU's ${NCPUS}, MEMORY ${MEMORY}, IP ${IP}
<y or n> ? \c"

read WISH
echo
if [ $WISH = "n" ] ; then
echo "You chose no, good bye"
exit
fi
if [ ! $WISH = "y" ] ; then
echo in vaild optin g - exiting
exit
fi
# 2  
Old 01-05-2009
here is how you do it,

a,b,c are the command line options

Code:
while
      getopts a:b:c: OPT 2>/dev/null
   do
      case $OPT in
         a)
            VarA=$OPTARG
         ;;
         b)
            VarB=$OPTARG
         ;;
         c) 
            VarC=$OPTARG
         ;;
         *)
            help #Call help function
         ;;
      esac
   done

# 3  
Old 01-05-2009
Quote:
Originally Posted by rookieuxixsa
I am trying to set up prompts when you don't enter the right information or dont enter the information at all, when executing a script. Below is the question that i am asking and i am not sure how to set up the if statements to make sure that the user enters the name, cpu's, memory and ip. I was told that getopts with a cease statement might be usefull, but im not sure how to apply it. Any help would be greatly appreciated...
Please put code inside [code] tags.
Quote:
Code:
NAME=$1
NCPUS=$2
MEMORY=$3
IP=$4
MACHINENAME=`hostname`
MASTERHOST=svvnyc702
 
echo "Do you wish to proceed with the creation of UAT ZONE zone-${NAME}, CPU's ${NCPUS}, MEMORY ${MEMORY}, IP ${IP}
<y or n> ? \c"

Code:
while [ -z "$name" ] ## I recommend using lowercase variable names
do
  printf "Enter NAME: "
  read name
done

while [ -z "$ncpus" ]
do
  printf "Enter number of CPUs: "
  read ncpus
done

while [ -z "$memory" ]
do
  printf "Enter memory: "
  read memory
done

Quote:
Code:
read WISH
echo
if [ $WISH = "n" ] ; then
  echo "You chose no, good bye"
  exit
fi
if [ ! $WISH = "y" ] ; then
  echo in vaild optin g - exiting
  exit
fi


Code:
read wish
case $wish in
   n) echo "You chose no, good bye"
      exit ;;
esac

# 4  
Old 01-06-2009
thanx for the help...
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Question about getopts optional argument [args...]

There are many places where I can see the syntax description for optargs, which, usually boils down to this: getopts OPTSTRING VARNAME where: OPTSTRING tells getopts which options to expect and where to expect arguments VARNAME tells getopts which shell-variable to use for option reporting... (2 Replies)
Discussion started by: sharkura
2 Replies

2. Shell Programming and Scripting

Using getopts

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

3. Shell Programming and Scripting

Getopts help

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)
Discussion started by: sidh_arth85
4 Replies

4. Shell Programming and Scripting

? used in getopts

Suppose I have a code below . while getopts a: opt do case $opt in a) app_name="$OPTARG";; *) echo "$opt is an invalid option"; exit 1;; ?) echo "The value of $OPTARG is an invalid option"; exit 1;; esac done Could anyone please tell me in which case my... (1 Reply)
Discussion started by: maitree
1 Replies

5. Shell Programming and Scripting

Question about getopts

I am trying to use the finction getopts in script. From what I understand this can be an example for using: while getopt "p:rvt:" do case p) echo "$OPTARG" ;; r) echo... (5 Replies)
Discussion started by: programAngel
5 Replies

6. Shell Programming and Scripting

getopts question

could anyone please tell me what this will automatically set my variable all=True.... #!/bin/sh all=FALSE while getopts a: option do case "option" in a) all=TRUE;; /?) echo "...... " exit 1;; esac done if then echo "true" else echo "false" (2 Replies)
Discussion started by: k2k
2 Replies

7. Shell Programming and Scripting

getopts help

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)
Discussion started by: GrepMe
3 Replies

8. Shell Programming and Scripting

getopts question!!!

is there a better way to check if all args are set??? while getopts h:p:u: opt do case "$opt" in h) host="$OPTARG";; p) port="$OPTARG";; u) user="$OPTARG";; \?) echo >&2 \ "usage: $0 -h host -p port -u user" exit 1;; esac done ... (1 Reply)
Discussion started by: andy2000
1 Replies

9. Shell Programming and Scripting

question about getopts

hello there I am back with more questions (sorry it is been quite a while since I had done scripting). I had tried the search function to search for the threads that might have an answer to my question, but I could not find it, so I had decided to post it. I had created the scripts below in ksh... (2 Replies)
Discussion started by: ahtat99
2 Replies

10. Shell Programming and Scripting

help in getopts

hey need help with getopts again. i am using getopts to read my command line options and arguments. i can manage to do for options that have only one argument e.g srcipt_name -f 3 i am able to use getopts to do this but i am having problems two accept more than two agruments e.g.... (1 Reply)
Discussion started by: problems
1 Replies
Login or Register to Ask a Question