Expect command use for interactive mode of scripting


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Expect command use for interactive mode of scripting
# 1  
Old 11-17-2011
Expect command use for interactive mode of scripting

Hi All,

I am writing a script(Auto_Installation.sh) which is calling one another script (./update_manager /spare/install/HO7/PME_Response_file.txt)

Now the issue is result of (./update_manager /spare/install/HO7/PME_Response_file.txt) script is
Code:
##########################################
OAM Update Manager - Main Menu
==============================

1. Install an OAM PME
2. Uninstall an OAM PME
3. View installed OAM PMEs
4. Exit the Update Manager
Choose an Option:
##########################################

NOw I want to give input as "1". so that script can move forward.
I tried expect command but I am failing every time

IN Auto_Installation.sh
Code:
./update_manager /spare/HO16/pme.response.template
expect "Choose an Option:"
send 1\r

o/p of this is
Code:
^Ccouldn't read file "Choose an Option:": no such file or directory
expect_example.sh: line 7: send: command not found

I am not sure how to utilize expect in this case.

Please help me.

Thanks,
Dhruvak
India


Moderator's Comments:
Mod Comment Please use code tags!

Last edited by zaxxon; 11-17-2011 at 09:44 AM.. Reason: code tags, see PM
# 2  
Old 11-17-2011
Try this...
Code:
echo 1 | ./update_manager /spare/install/HO7/PME_Response_file.txt

If you have autoexpect installed, try that...
--ahamed
# 3  
Old 11-17-2011
Hi Ahmed,

Thanks for reply. I could not follow that command because after pressing "1" I need to install certain PMEs and for that I need to give absolute path for those PMEs.

So, inshort I need to pass total 7 outputs inside ./update_manager /spare/install/HO7/PME_Response_file.txt script.

Then update manager script will be over.

That is why I am trying expect command.

Thanks,
Dhruvak
# 4  
Old 11-17-2011
If there are so many inputs, why not have a configuration file and read the data from that...

--ahamed
# 5  
Old 11-18-2011
How? Will you please give an example?

---------- Post updated at 04:41 AM ---------- Previous update was at 12:30 AM ----------

Will anyone please help me in this case?
# 6  
Old 11-22-2011
SmilieSmilieSmilieSmilie
# 7  
Old 11-23-2011
So, Finally I found a solution.
Code:
#!/usr/bin/expect
spawn -noecho /opt/opwv/oam/1.8/bin/update_manager /spare/HO16/pme.response.template
expect "Option:"
send 3\r
expect "detailed information:"
send 1\r
expect "continue:"
send \n\r


And call this script like
./expect_example.sh


Moderator's Comments:
Mod Comment How to use code tags

Last edited by Franklin52; 11-23-2011 at 07:48 AM.. Reason: Code tags
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

SFTP in non-interactive mode without password

Hello all, can we SFTP to the destination server in a non-interactive mode with out estbalishing the public key of origination server in the destination server? meaning i want to harcode the password as part of the below script or as an variable? Please let me know if there is any better way to... (2 Replies)
Discussion started by: Ariean
2 Replies

2. Shell Programming and Scripting

SFTPing non-interactive mode

Hi All, I need to sftp without any intervention.(LInux,Ksh) I have tried some ideas listed here...but its not working... Please advise on it. (1 Reply)
Discussion started by: jesu
1 Replies

3. UNIX for Advanced & Expert Users

sudo in non interactive mode

Hi , I login to unix using my id and then do a sudo to execute any programs i want. sudo su - <id> password : xxxxxxx Is there a way to make it non interactive so that i can use it in shell script. (1 Reply)
Discussion started by: ashwin3086
1 Replies

4. Solaris

Doubt in zlogin non interactive mode........

I want zlogin -C as non interactive mode so after booting the zone I created a file sysidcfg in /etc directory of the zone the sysidcfg file info as shown below. system_locale=C terminal=dtterm network_interface=primary { hostname=my-zone } security_policy=NONE... (1 Reply)
Discussion started by: vijaysachin
1 Replies

5. Homework & Coursework Questions

How to write script that behaves both in interactive and non interactive mode

Q. Write a script that behaves both in interactive and non interactive mode. When no arguments are supplied it picks up each C program from the directory and prints first 10 lines. It then prompts for deletion of the file. If user supplies arguments with the script , then it works on those files... (8 Replies)
Discussion started by: rits
8 Replies

6. Shell Programming and Scripting

script to non interactive mode

Gud morning everybody, I need small help form you people,Please advice me. I have a utility(adpatch) which takes 10-15 prompts, i want to automate this by calling this utility in shell script. Now my qiestion i want to run the script in non interactive mode. An example. $adpatch... (1 Reply)
Discussion started by: swetham.apps
1 Replies

7. Solaris

Solaris 10 Jumpstart goes to interactive mode instead of using sysidcfg

Ever since I have started using Solaris 10 images, I have had a problem I can not find a solution for. I have a Solaris 10 image that I created from a Solaris 10 DVD. The sysidcfg file has been created and set up in the bootparams file. I have no issues in Solaris 8 or 9. In Solaris 10, the... (5 Replies)
Discussion started by: rsherry
5 Replies

8. UNIX for Advanced & Expert Users

SU command in non interactive mode

Can i run the SU command in a non interactive mode. What i want to do is to pass the username and the password as commandline or batch parameters. Please let me if its possible and how to pass them. A sample file will be appreciated. Thanks, (6 Replies)
Discussion started by: rohitag
6 Replies

9. Shell Programming and Scripting

Perl Interactive mode

Hi All, Does perl has an interactive mode like other shell? If there is, can any one show me the equivalent code for the below csh script ? This csh code prompts user for their name and prints the name. #!/bin/csh echo -n "Pls enter the your name: " set name = ($<) echo "You hav... (2 Replies)
Discussion started by: Raynon
2 Replies

10. UNIX for Dummies Questions & Answers

Interactive Mode?

:confused: Can anyone please tell me how to get into Interactive Mode? (2 Replies)
Discussion started by: Nomad
2 Replies
Login or Register to Ask a Question

Featured Tech Videos