Passing arguments


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Passing arguments
# 1  
Old 09-15-2010
Passing arguments

I need to pass arguments to a shell script.My batch is calling some java program.
#################
x=$1
y=$2
java -classpath program
###################
if first parameter and second parameter is null then
java -classpath program
if first parameter is not null and second parameter is null then
java -classpath program -parameter1 $x
if first parameter and second parameter is not null then
java -classpath program -parameter1 $x -parameter2 $y
I need to manually run this batch with the above 3 conditions.
Ex:
1)myscript.sh -parameter1 AA;BB;CC -parameter2 KK;YY
2)myshcript.sh
3)myscript.sh -parameter1 AA;BB;CC
# 2  
Old 09-15-2010
Hi,

I think there is no need to take 2 variable x and y in the shell script.

You can directly write the myscript.sh as under:

Code:
java -classpath program "$1" "$2" "$3" "$4"

And at the time of calling this script you have enclose the parameters in double or single quotes, as there are ; in the input. ; is a special character which will be interpreted by the shell.
# 3  
Old 09-15-2010
Thanks !

While calling shell script i need to use prefix . Any idea?
Ex:
myscript.sh -parameter1 "AA;BB;CC" -parameter2 "DD;E"
# 4  
Old 09-18-2010
Here you go:
Code:
#!/bin/bash
# short arguments
while getopts  ":a:b:" OPTION
    do
        case $OPTION in
            a)
                PARAM1=$OPTARG
                echo short PARAM1 set to $PARAM1
                ;;
            b)
                PARAM2=$OPTARG
                echo short PARAM2 set to $PARAM2
                ;;
            *)
                break;;
         esac
    done

# long arguments
while [ $# -gt 0 ]
do
    case "$1" in
       -parameter1)
                    PARAM1=$2;
                    echo long PARAM1 set to $PARAM1
                    shift;;
       -parameter2) 
                    PARAM2=$2;
                    echo long PARAM2 set to $PARAM2
                    shift;;
       *)         
                    shift;;
    esac
    shift
done


Code:
./myscript.sh -a "AA;BB;CC" -b "DD;E" -parameter1 "AA;BB;CC" -parameter2 "DD;E"
short PARAM1 set to AA;BB;CC
short PARAM2 set to DD;E
long PARAM1 set to AA;BB;CC
long PARAM2 set to DD;E

 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Using here document when passing arguments

I have a script test.sh which reads various inputs from a user. #!/bin/ksh read x read y read z echo x: $x y: $y z: $z # read few more things again read a read b echo a: $a b: $b When i run this script as test.sh << EOF 1 2 EOF (3 Replies)
Discussion started by: ariesb2b
3 Replies

2. Shell Programming and Scripting

Passing arguments--Error

Hi, i have a file.txt with data Bangalore Chennai Hyd filename of the script is: new.sh result=`cat file.txt | grep $1` if then echo pass else echo fail fi i am executing the file in the cmd line as "sh new.sh Bangalore" o/p is pass if i give "sh new.sh delhi" o/p is... (6 Replies)
Discussion started by: harsha85
6 Replies

3. Shell Programming and Scripting

Reading a string and passing passing arguments to a while loop

I have an for loop that reads the following file cat param.cfg val1:env1:opt1 val2:env2:opt2 val3:env3:opt3 val4:env4:opt4 . . The for loop extracts the each line of the file so that at any one point, the value of i is val1:env1:opt1 etc... I would like to extract each... (19 Replies)
Discussion started by: goddevil
19 Replies

4. Shell Programming and Scripting

Passing arguments to python

How can I pass arguments to a python script??? (3 Replies)
Discussion started by: kristinu
3 Replies

5. Shell Programming and Scripting

Passing arguments to csh

I have noticed this thing using csh when passing arguments Suppose I call a csh script using ../Scripts/plot-model.csh -vmod="npt02-z30.vmod" -R="0/80/0/30" -c="0/4.5" -aspr="1:10" Somehow the " get removed when doing $argv ending up with -vmod=npt02-z30.vmod... (0 Replies)
Discussion started by: kristinu
0 Replies

6. Shell Programming and Scripting

Passing arguments to awk

I have an awk script below which I call using for example awk -f ../../A-Scripts/select-model.awk iterations.txt 16x12 10 I want to be able to use it in a different way like this awk -f ../../A-Scripts/select-model.awk iterations.txt nxz=16x12 iter=10 or awk -f... (1 Reply)
Discussion started by: kristinu
1 Replies

7. Shell Programming and Scripting

passing arguments

Hi I have a script to which I pass multiple arguments, for example lets say the script name is "abc". I run the script like ./abc def /file <directory location> In the above "def" is the first argument and "/file" is the second argument. I expect <directory location> that is passed after... (4 Replies)
Discussion started by: zmfcat1
4 Replies

8. Shell Programming and Scripting

Passing Arguments-Help

Hi, I have a script which adds the user credentials to an ldap server. Im passing the variables as below.. /path/my_script $uname $pwd $environ ${deposit} If i enter some special characters like ';' in $pwd, script returns an error which is set to display if the user enters... (5 Replies)
Discussion started by: Tuxidow
5 Replies

9. Shell Programming and Scripting

Passing and using arguments in Scripts.

I am new to scripting in AIX / UNIX. I have a script that runs 4 other scripts and I want to be able to pass in a agrument that I can check before I run the next script to see if the previous script finished with no errors. Can someone send me an example of this as I'm sure it's pretty easy to... (1 Reply)
Discussion started by: David.Vilmain
1 Replies

10. UNIX for Dummies Questions & Answers

passing arguments

I'm trying to pass a filename, or all the files in the current directory to the ls command with a script. Unsuccessful so far, here are a few of my attempts: #!/bin/ksh read fname #if (( $# > 0 )); then $fname | ls -l #fi this produces a long listing of all the files in my current... (4 Replies)
Discussion started by: jpprial
4 Replies
Login or Register to Ask a Question