How to pass arguments to an interactive script?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting How to pass arguments to an interactive script?
# 1  
Old 01-27-2014
How to pass arguments to an interactive script?

I've tried to find a solution to this, but I"m stumped.

OS - RH Linux 5.9

I have a bash script <myProgram.sh> that gets executed manually and creates a small response file. I'm trying to automate the running of this script.

When myProgram.sh runs, it prompts the user to enter 2 pieces of information.

For the first input the user is told to hit Enter for is a line feed.

The second input is [Y]es.

Example:

Code:
./myProgram.sh

First prompt:
Press Enter to Continue

Second prompt:
Enter [Y]es, [N]o) [N]

I'd like to automate the execution of this script.


I figure that if I can do it from the command line, then I can script it.

Here is the closest that I've tried:

echo -e "\n" | ./emocmrsp

This seems to pass in a line feed, which answers the first prompt, but it doesn't pass anything to the second prompt.

So, I"m struggling with what to do for the second prompt.


I tried this but it didn't work.

This echos the linefeed "\n" for the first prompt, but fails for the second prompt.

echo -e "\n" "Y\n" | ./emocmrsp


([Y]es, [N]o) [N]: Invalid value specified.


Any suggestions?

Last edited by Corona688; 01-27-2014 at 02:28 PM..
# 2  
Old 01-27-2014
Try
Code:
(echo -e "\n" ; echo -e "Y\n") | ./emocmrsp

Simple echo itself is a newline, so you can use

Code:
(echo ; echo Y)  | ./emocmrsp

# 3  
Old 01-27-2014
$ (echo ; echo Y) | ./emocmrsp
$ (echo -e "\n" ; echo -e "Y\n") | ./emocmrsp

Both commands returned this error:


Code:
OCM Installation Response Generator 10.3.4.0.0 - Production
Copyright (c) 2005, 2010, Oracle and/or its affiliates.  All rights reserved.

Provide your email address to be informed of security issues, install and
initiate Oracle Configuration Manager. Easier for you if you use your My
Oracle Support Email address/User Name.
Visit http://www.oracle.com/support/policies.html for details.
Email address/User Name:
You have not provided an email address for notification of security issues.
Do you wish to remain uninformed of security issues ([Y]es, [N]o) [N]:  Invalid value specified.


Last edited by Corona688; 01-27-2014 at 02:28 PM..
# 4  
Old 01-27-2014
Does this mean, the second input didn't work?
Is that error or the message from script? What do you expect when you run the script in interactive mode?
# 5  
Old 01-27-2014
Here's the output of the script running in interactive mode. When it asks for an email address, I press enter to get past it. Then I press Y at the last line.

Code:
$ ./emocmrsp
OCM Installation Response Generator 10.3.4.0.0 - Production
Copyright (c) 2005, 2010, Oracle and/or its affiliates.  All rights reserved.

Provide your email address to be informed of security issues, install and
initiate Oracle Configuration Manager. Easier for you if you use your My
Oracle Support Email address/User Name.
Visit http://www.oracle.com/support/policies.html for details.
Email address/User Name:  <<<< I press Enter Here 

You have not provided an email address for notification of security issues.
Do you wish to remain uninformed of security issues ([Y]es, [N]o) [N]:  Y  <<<< I press Y
The OCM configuration response file (ocm.rsp) was successfully created.


Last edited by Corona688; 01-27-2014 at 02:28 PM..
# 6  
Old 01-27-2014
Code:
./emocmrsp <<EOF

Y
EOF

# 7  
Old 01-27-2014
Same error:

Code:
$ ./emocmrsp <<EOF
>
> Y
> EOF
OCM Installation Response Generator 10.3.4.0.0 - Production
Copyright (c) 2005, 2010, Oracle and/or its affiliates.  All rights reserved.

Provide your email address to be informed of security issues, install and
initiate Oracle Configuration Manager. Easier for you if you use your My
Oracle Support Email address/User Name.
Visit http://www.oracle.com/support/policies.html for details.
Email address/User Name:
You have not provided an email address for notification of security issues.
Do you wish to remain uninformed of security issues ([Y]es, [N]o) [N]:  Invalid value specified.

Interestingly, these 2 statements returned the same (above) error.

Code:
./emocmrsp <<EOF

Y
EOF

and

Code:
./emocmrsp <<EOF

EOF

It looks like the Y isn't getting read correctly.

Last edited by Corona688; 01-27-2014 at 02:29 PM..
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Cat a script, pipe it, then pass arguments to it?

suppose i have a perl script that is normally run this way: ./checkdisk.pl -H hostname -w 40 -c 80 but, for whatever reason, i cannot run the script directly as it should. But i can cat it through pipe. How can i pass the arguments "-H hostname -w 40 -c 80"? so this is what i'm doing,... (6 Replies)
Discussion started by: SkySmart
6 Replies

2. Shell Programming and Scripting

Pass Arguments to Command from Shell Script

Hi all, I am working on a project, in which I have to connect to Bluetooth low energy device. I am able to connect and do data transfer from command line. But I want to do from script Here is my script #!/bin/bash #sudo hcitool -i hci0 lescan sleep 1 sudo hcitool -i hci0 lecc --random... (8 Replies)
Discussion started by: nithin@embdes
8 Replies

3. Shell Programming and Scripting

Passing arguments to interactive program through bash script, here document

Dear Users, I have installed a standalone program to do multiple sequence alignment which takes user parameters to run the program. I have multiple sequence files and want to automate this process through a bash script. I have tried to write a small bash code but its throwing errors. Kindly... (13 Replies)
Discussion started by: biochemist
13 Replies

4. Shell Programming and Scripting

Pass arguments to bash script

myscript.sh #!/bin/bash ARGA=$1 if ; then echo "${ARGA}:Confirmed" else echo "${ARGA}:Unconfirmed" fi when I run the above script from the command line, i run it as: ./myscript.sh jsmith now some times, i need to runn it this way: (8 Replies)
Discussion started by: SkySmart
8 Replies

5. Shell Programming and Scripting

How to pass arguments to an sftp script??

hi, Is it possible to pass arguments to a sftp script and use those arguments in the program? for example sftp_script FILENAME=$1 #!/usr/bin/expect spawn /usr/bin/sftp abc@ftp.abc.com expect "abc@ftp.abc.com's password:" send "pass\r" expect "sftp>" send "mput $FILENAME\r"... (9 Replies)
Discussion started by: Little
9 Replies

6. Shell Programming and Scripting

To pass arguments to makefile using script

Hi, I want to run a target of makfile using script by passing different arguments to it again n again. I i need to grep certain things from the log file. eg make abc KAB=8 BAC=8 >& KAB_BAC.log grep "timeA" KAB_BAC.log grep "timeB" KAB_BAC.log (i want to store the difference of the two time... (0 Replies)
Discussion started by: vdhingra123
0 Replies

7. UNIX for Advanced & Expert Users

How to pass arguments to an interactive script

Hey guys, I have an interactive script that is quite critical to our production environmentl thus updating it to run non-interactively is not an option. The script takes a varying number of arguments, which it ques untill user confirm end of data entry e.g of user input : 1 2 y ... (3 Replies)
Discussion started by: geek.ksa
3 Replies

8. Shell Programming and Scripting

need help to pass arguments in script

Hi, I have a my script here-- print "The Perl Script does the User health check and system health check...\n"; print "---------------------------------------------------------------------\n"; # use strict; my($OS); $OS = $^O; # need to test @ARGV before GetOptions shifts it if (@ARGV... (1 Reply)
Discussion started by: namishtiwari
1 Replies

9. Shell Programming and Scripting

Need help to pass arguments to shell script

Hi, I have a shell script called ftp.sh which is running continously in background. I tried passing arguments to this script but it did not worked out. Below is ftp.sh script. Please help me case $param in start) sleep_func "300" echo "!ksh $scr_ddir/ftp.sh... (1 Reply)
Discussion started by: bhargav20
1 Replies

10. Shell Programming and Scripting

How to pass arguments to a function in a shell script?

Hi, I have two shell variables $t1 and $t2 which I need to pass to a function in a shell script. The function will do some computation with those two variables and echo the resultant. But I do not know how to pass teh arguments. The function written is f1() {...... ........ } What should... (3 Replies)
Discussion started by: preetikate
3 Replies
Login or Register to Ask a Question