passing runtime arguments to a shell script...


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting passing runtime arguments to a shell script...
# 8  
Old 01-09-2009
Thanks Padow for your response, Is the Getopts command reads the parameter from CA workload. Can you give me the syntax or example how it works?
# 9  
Old 01-09-2009
Here is a sample script I use to rsh commands (I know I should be using SSH instead) to multiple hosts. The hosts to be used and the command to be sent is received from the command line:

Code:
#!/bin/ksh

. /usr/sample/etc/unixadm.env  #Get host list variables

function printusage {
  echo "Usage: checkhosts.ksh [npsu] -c command"
  echo "       n:  AIX non-production"
  echo "       p:  AIX production"
  echo "       s:  SUN production"
  echo "       u:  SUN non-production"
}

while getopts ":npsuc:" opt
do
        case $opt in
        c) cOmmand="$OPTARG" ;;
        n) HOSTS=$AIXNP ;;
        p) HOSTS="$AIXPROD $HOSTS" ;;
        s) HOSTS="$SUNPROD $HOSTS" ;;
        u) HOSTS="$HOSTS $SUNNP" ;;
        ?) printusage
                exit 1;;
        esac
done
if [[ -z $cOmmand || -z $HOSTS ]]; then  #Check to make sure that there are hosts and a command to use
  printusage
  exit 2
fi

if ! echo $cOmmand | grep [a-zA-Z]; then  #Another validity test
  echo "invalid command: $cOmmand"
  printusage
  exit 2
fi

for i in $HOSTS; do
  echo "===== $i ====="
  if echo $i | grep -qiE "dev|qa|test"; then
    i=$i.qadomain.com
  fi
  rsh $i $cOmmand
done

On the getopts line:
* Having a colon first means that we will process our own errors
* Each letter listed is a valid switch
* The colon after the c means that a value should accompany the switch on the command line

A valid command to execute this script would be :
Code:
./checkhosts.ksh -nc "lssrc -s net-snmp"

Padow
# 10  
Old 01-09-2009
Bug Sample script

Hi Paddow,

Thanks for you script. Can you provide me the sample script which should accept only one parameter send through the command line. Also i need to check the argument for following condition

if $arg1 = 'ABC'
concatenate 'ABC' to filename
else
if $arg1 = 'DEF'
concatenate 'DEF' to filename
end-if
# 11  
Old 01-09-2009
Quote:
Originally Posted by kany2k
Hi Paddow,

Thanks for you script. Can you provide me the sample script which should accept only one parameter send through the command line. Also i need to check the argument for following condition

if $arg1 = 'ABC'
concatenate 'ABC' to filename
else
if $arg1 = 'DEF'
concatenate 'DEF' to filename
end-if

Code:
case $1 in
     ABC|DEF) filename=${filename}$1 ;;
     *) echo "What do I do now?" ;;
esac

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Passing Arguments to shell script from file is not working as expected.

Hi All, I have below simple shell script in cloudera quick start vm cenos 6 which copy file from source to destination. # file_copy.sh source_dir = ${source_dir} target = ${target_dir} cp source_dir target and my parameter file is like below #parameter_file.txt source_dir =... (4 Replies)
Discussion started by: Narasimhasss
4 Replies

2. Shell Programming and Scripting

C shell script passing arguments problem.

I found something insteresting when I tested passing arguments into my scripts. My scripts is as below. % cat passarg.env #!/bin/csh echo "passarg: argv = $argv argv = $argv" passarg1.env $* % cat passarg1.env #!/bin/csh echo "passarg1: argv = $argv argvp=$argv" set str = "test... (5 Replies)
Discussion started by: bestard
5 Replies

3. Shell Programming and Scripting

Shell scripting with passing arguments

Hi All, I am using the script for creating local queue and passing the arguments while running the script as below n=0 while do e=`expr $n + 3` echo 'DEFINE QL('$e') MAXDEPTH('$6') MAXMSGL('$7') DEFPSIST('$8') '$9'' | /apps/mqm_opt/bin/runmqsc $2 n=`expr $n + 1` done Running the... (5 Replies)
Discussion started by: Anusha M
5 Replies

4. Shell Programming and Scripting

Passing multiple arguments to a shell script

Hi Gurus, Need some help with the shell scripting here. #!/bin/ksh ps -ef | grep -i sample.ksh | grep -v grep > abc.txt if then echo "sample.ksh is executing" else echo "sample.ksh is not executing" fi (1 Reply)
Discussion started by: jayadanabalan
1 Replies

5. Shell Programming and Scripting

To run a local shell script in a remote machine by passing arguments to the local shell script

I need to run a local shell script on a remote machine. I am able to achieve that by executing the command > ssh -qtt user@host < test.sh However, when I try to pass arguments to test.sh it fails. Any pointers would be appreciated. (7 Replies)
Discussion started by: Sree10
7 Replies

6. Programming

Passing arguments from java to script shell

Hello Please i want to pass parameter (the string s) to the shell script: Quote: String s="Hello"; Process process = Runtime.getRuntime().exec("sh script1.sh"); How can i do please? Thank you (0 Replies)
Discussion started by: chercheur857
0 Replies

7. Shell Programming and Scripting

Passing arguments from a bash shell script to a command

I'm pretty new to bash scripting and I've found myself writing things like this (and the same with even more nesting): if $CATEGORIES; then if $LABEL_SLOTS; then $pyth "$wd/texify_grammar.py" "$input" "$texfile" "--label-slots" "--categories" "$CATEGORY_LIST" ... (9 Replies)
Discussion started by: burbly
9 Replies

8. Shell Programming and Scripting

Help required in passing multiple arguments from a shell script to a pl/sql block

Hi, hope everyone are fine. Please find my issue below, and I request your help in the same In a configuration file, i have a variable defined as below TEST = 'One','Two','Three' I am trying to pass this variable in to a sql script which is define in a pl/sql block as follows, In the... (1 Reply)
Discussion started by: ramakanth_burra
1 Replies

9. Shell Programming and Scripting

Passing arguments at runtime

Hi .. Can any one please tell how to pass argument to shell script at runtime? I want to implement funcnality just like bc, where we can provide input while script is running and can be used later in the same script. Thanks in advance... (1 Reply)
Discussion started by: kunjalhg
1 Replies

10. Solaris

Passing arguments to a shell script from file while scheduling in cron

Hi, I have a shell script Scp_1.sh for which I have to pass 2 arguments to run. I have another script Scp_2.sh which in turns calls script Scp_1.sh inside. How do I make Scp_1.sh script to read arguments automatically from a file, while running Scp_2.sh? -- Weblogic Support (4 Replies)
Discussion started by: weblogicsupport
4 Replies
Login or Register to Ask a Question