Visit Our UNIX and Linux User Community


How to pass two or more parameters to the main in shell script


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers How to pass two or more parameters to the main in shell script
# 1  
Old 10-12-2007
How to pass two or more parameters to the main in shell script

Hey Guys


from the below script what I understood is we are sending the the first parameter as input to the main (){} file
main > $LOGFILE 2>&1
but can we send two or three parameter as input to this main file as
main > $LOGFILE 2>&1 2>&2 like this

Can any one plz help I need to writ a script which takes three parameters

#!/usr/bin/ksh
DIRNAME=/web/local/orderlink/linkload/script
LOGDIR=/web/local/orderlink/linkload/logs
LOGFILE=$LOGDIR/process_stuck_csos.log
NUMARGS=$#
ARGI=$1

main()
{
DATESTAMP=`date +%Y%m%d%H%M%S`
SQL_TEMP_FILE=$DIRNAME/tmpcsosclean.sql
SQL_A="SET SERVEROUTPUT ON;\n
DECLARE\n
TYPE OrderList IS TABLE OF S_ORDR.ORDR_ID%TYPE INDEX BY BINARY_INTEGER;\n
listOrders OrderList;\n
\n
BEGIN\n
"

SQL_B="\nFORALL i IN listOrders.FIRST..listOrders.LAST\n
UPDATE s_ordr set ORDR_STAT_TXT = 'CSOS REJECTED'\n
where ordr_id = listOrders(i)\n
and ORDR_STAT_TXT = 'CSOS SIGNED/IN-PROG';\n
DBMS_OUTPUT.PUT_LINE(SQL%ROWCOUNT || ' row(s) actually updated.' );
COMMIT;
\n
END;
\n/
\nEXIT
"

. $DIRNAME/set_env.ksh

echo "----------------------------------------------------------------------"
echo $DIRNAME"/"$0
echo $DATESTAMP
echo "Using:"$ORACLE_SID

n=`grep -c '^[0-9]\{1,10\}$' $infile`
echo $n "order id(s) found to process in" $infile

if [ $n -lt 1 ]; then
echo "Nothing to do..."
exit 0;
fi

echo "Generating SQL";


echo $SQL_A > $SQL_TEMP_FILE
grep '^[0-9]\{1,10\}$' $infile | awk '{print "listOrders("NR") := "$1";"}' >> $SQL_TEMP_FILE
echo $SQL_B >> $SQL_TEMP_FILE

echo "Running SQL_PLUS"

sqlplus -s / @$SQL_TEMP_FILE

mv $SQL_TEMP_FILE $LOGDIR/proc_stuck_csos.sql.log
}

if [ $# != 1 ]; then
echo "Usage: $0 input-file"
exit 1
else
if [ ! -r $ARGI ]; then
echo "Error: File not found, or file unreadable!"
exit 1
else
infile=$ARGI
fi
fi

main > $LOGFILE 2>&1



Thanks in advance
I am desperate needed to code as quickly as possible
pinky
 

Previous Thread | Next Thread
Test Your Knowledge in Computers #583
Difficulty: Easy
Buffered input/output is used because I/O operations can slow the system down.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shell script to calculate the max cpu usage from the main script

Hi All, I have a script which does report the cpu usuage, there are few output parameter/fields displayed from the script. My problem is I have monitor the output and decide which cpu number (column 2) has maximum value (column 6). Since the output is displayed/updated every seconds, it's very... (1 Reply)
Discussion started by: Optimus81
1 Replies

2. Shell Programming and Scripting

Bash- Command run from script does not pass full parameters with spaces inside

There's a JavaScript file that I call from command line (there's a framework) like so: ./RunDiag.js param1:'string one here' param2:'string two here' I have a shell script where I invoke the above command. I can run it in a script as simple as this #!/bin/bash stuff="./RunDiag.js... (4 Replies)
Discussion started by: AcerAspirant
4 Replies

3. Shell Programming and Scripting

pass shell parameters to awk does not work

Why does this work for myfile in `find . -name "R*VER" -mtime +1` do SHELLVAR=`grep ^err $myfile || echo "No error"` ECHO $SHELLVAR done and outputs No error err ->BIST Login Fail 3922 err No error err ->IR Remote Key 1 3310 err But... (2 Replies)
Discussion started by: alan
2 Replies

4. Shell Programming and Scripting

Can't get shell parameters to pass properly to sqlplus

Gurus, The issue I'm having is that my Shell won't accept SQL parameters properly...... Here's they way I'm running it.... applmgr@ga006hds => sh CW_MigrationDeployScript.sh apps <appspwd> <SID> '01-JAN' '31-MAR' The process just hangs not submitting the SQL job... ... (3 Replies)
Discussion started by: WhoDatWhoDer
3 Replies

5. UNIX for Advanced & Expert Users

Pass parameter to the main script from wrapper script

Hi, I am writing a wrapper script(wrap_script.sh) to one of the main scripts (main_script.sh) The main script is executed as following: ./main_script.sh <LIST> <STARTDATE> <ENDDATE> looks for a parameter which is a LIST(consists of different list names that need to be processed), START/END... (0 Replies)
Discussion started by: stunnerz_84
0 Replies

6. Shell Programming and Scripting

call another shell script and pass parameters to that shell script

Hi, I basically have 2 shell scripts. One is a shell script will get the variable value from the user. The variable is nothing but the IP of the remote system. Another shell script is a script that does the job of connecting to the remote system using ssh. This uses a expect utility in turn. ... (2 Replies)
Discussion started by: sunrexstar
2 Replies

7. Shell Programming and Scripting

need to pass parameters to working and tested awk script

I have a working and tested AWK script that removes duplicates from an input file and generates an output file without the duplicates. I had help from my other post to develop it: ... (3 Replies)
Discussion started by: script_op2a
3 Replies

8. Shell Programming and Scripting

want to pass parameters to awk script from shell script

Hello, I have this awk script that I want to execute by passing parameters through a shell script. I'm a little confused. This awk script removes duplicates from an input file. Ok, so I have a .sh file called rem_dups.sh #!/usr/bin/sh... (4 Replies)
Discussion started by: script_op2a
4 Replies

9. Shell Programming and Scripting

How to pass parameters transparently into a sub script

Hi, I am trying to write a script like this: #!/bin/ksh #script name: msgflow #The awk commands for Solaris and Linux are incompatible if ] then msgflow-solaris $* elif ] then msgflow-linux $* fi This script is shared by a file system which is visible to both... (3 Replies)
Discussion started by: danielnpu
3 Replies

10. Shell Programming and Scripting

How to pass Shell variables to sqlplus use them as parameters

Hi, I am trying to pass some of the variables in my shell scripts to the sqlplus call and use them as parameters. For example, I would like to replace the 'SAS', and '20050612' with $var1 and $var2, respectively, how can I do that? --------------------------------------------------------... (1 Reply)
Discussion started by: Jtrinh
1 Replies

Featured Tech Videos