Passing sql file name as an argument


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Passing sql file name as an argument
# 1  
Old 05-11-2017
Passing sql file name as an argument

Hi all,

I have a a file which contains an oracle query. If this file is pushed into a shell script such as the below, it of course works fine.
Code:
#!/usr/bin/sh

su - oracle -c 'sqlplus -s / as sysdba <<EOF
   @/home/cron/ORA/sql/T-ORA006-OracleSessions.sql
   exit;
EOF

.
What i am after is, if it is possible to pass the sql file as an argument ($1) outside the script.

In practice something similar to:
Code:
#!/usr/bin/sh

su - oracle -c 'sqlplus -s / as sysdba <<EOF
   @\$1
   exit;
EOF

Where the script is then called
Code:
./oracle.sh /home/cron/ORA/sql/T-ORA006-OracleSessions.sql

Is that possible?
# 2  
Old 05-12-2017
The sqlplus command start is meant for that use:
Code:
#!/usr/bin/sh
filename="$1"
ocommand="sqlplus -s / as sysdba <<-EOF
start $filename
exit;
EOF
" 
su - oracle -c "$ocommand"

Your sample script is missing a tic (single quote) which would have prevented the variable from being handled correctly by the shell. The tic was probably what stopped your code from working anyway.
This User Gave Thanks to jim mcnamara For This Post:
# 3  
Old 05-12-2017
Hi Jim,

Thanks very much for your input, i actually also tried the start command but i as you said i might have missed the back tic!

Now it's working fine.

Thanks again
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 a second argument

I am trying to pass a second argument like so: if ] then export ARG2=$2 else message "Second argument not specified: USAGE - $PROGRAM_NAME ARG1 ARG2" checkerror -e 2 -m "Please specify if it is a history or weekly (H or W) extract in the 2nd argument" fi however, it always goes... (4 Replies)
Discussion started by: MIA651
4 Replies

2. UNIX for Beginners Questions & Answers

Creating file and passing argument to a command

Hi All, I am having command to run which will take argument as input file. Right now we are creating the input file by cat and executing the command ftptransfer -i input file cat >input file file1 file2 cntrl +d Is there a way I can do that in a single command like ... (1 Reply)
Discussion started by: arunkumar_mca
1 Replies

3. UNIX for Advanced & Expert Users

Passing resulted string name of a gzipped file as an argument to another piped tool

Hi, I have a .pcap.gz file and I would like to initially gzip it and then pass the resulting .pcap filename as an argument to a piped tool; the right-hand tool is not standardized linux tool but a custom one that strictly requires the string name of a given .pcap file in order for the pcap file... (2 Replies)
Discussion started by: amarn
2 Replies

4. Shell Programming and Scripting

Passing variable from file to sql from script

Hi Friend, I have one file in which some number are mentioned and number of lines are vary every time And i need to pass that number to my sql command from script. Suppose i have file acc.txt 45456546456 45464564565 67854353454 67657612132 Number of records are vary every time.... (20 Replies)
Discussion started by: pallvi_mahajan
20 Replies

5. Shell Programming and Scripting

Argument passing

How to pass the alphabet character as a argument in case and in if block? ex: c=$1 if a-z ]] then echo "alphabet" case $1 in a-z) echo "the value is a alphabet" edit by bakunin: please use CODE-tags. We REALLY mean it. (9 Replies)
Discussion started by: Roozo
9 Replies

6. Shell Programming and Scripting

Help with passing argument

Hi, I have a script that is scheduled with cron and runs every night. The cron part looks like this: 00 20 * * 0,1,2,3,4,5,6 /usr/local/bin/BACKUP TBTARM HOT DELETE My issue is with the 3rd parameter. Somewhere in the script, i want to tell the script to delete some files if the 3rd... (7 Replies)
Discussion started by: dollypee
7 Replies

7. Shell Programming and Scripting

passing Argument

Hi All, i have script like below.. echo "1) first option" echo "" echo "2) second option" echo "" echo "*) please enter the correct option" read select case $select in 1) echo "first option selected" ;; 2) echo "second option selected" ;; *) echo "please enter the correct... (4 Replies)
Discussion started by: Shahul
4 Replies

8. Shell Programming and Scripting

Problem in argument passing

Hell all, i have a problem in argument passing. print() { a=$1 b=$2 c=$3 echo $a echo $b echo $c } x="1 2 3" y="4 5 6" z="7 8 9" print $x $y $z. (4 Replies)
Discussion started by: tsaravanan
4 Replies

9. Shell Programming and Scripting

Passing argument to a pl/sql block

Hi, How can I pass an argument to a pl/sql block through perl/unix shell scripting. (2 Replies)
Discussion started by: er_ashu
2 Replies

10. UNIX for Dummies Questions & Answers

Permissions - passing a file as the argument

this is the only way i can think of to do this but there must be a better way or else im gonna end up writing 200 lines of copy and pasting code. echo ' READ WRITE EXECUTE' own=$(ls -al $1 |cut -c2) if ($own==r) then first=yes else first=no endif echo $first Im writing a... (1 Reply)
Discussion started by: iago
1 Replies
Login or Register to Ask a Question