04-10-2008
Need help with Expect and Shell script
This is my shell script which calls an expect file, i am trying to find out server.log file sizes on various servers. But what should be correct way to do that, is there any way i can run a for loop inside the expect file which can take cat <filename> as input. I know for can be used in expect file using counters but i need the content of file as input in in for loop.
---------------------------------------------------------------------
echo "Please enter your id: "
read uid
stty -echo
echo "Enter your password: "
read pass
stty echo
#loop into different boxes
for i in server1 server2 server3 server4 server5
do
#Check for the log file/clear it if there
if [ -f ~/tmp2.log ]
then
cp /dev/null ~/tmp2.log
fi
#this passes the userid pass and the servername to the expect file
expect find_server_logs.exp $i $uid $pass
#the tmp.log file contains the path of server.log file on various paths
#can this be executed within the expect file, or is there any better way to write the expect in the shell script itself.
for x in `cat ~/tmp.log`
do
# ls -l will take one input at a time from the file tmp.log and show its size
ls -l $x >> ~/tmp2.log
done
echo
echo "Hostname : $i"
echo
cat ~/tmp2.log | sort +4nr
done
________________________________________________________
#!/usr/bin/expect -f
spawn ssh [lindex $argv 1]@[lindex $argv 0] find /apps/logs/sunone -name server.log > ~/tmp.log
expect "[lindex $argv 1]@[lindex $argv 0]'s password:"
send "[lindex $argv 2]\r"
interact
*******************************
now the thing is i want the ls -l $x command to run on the various servers but fot that i have to take the inut for $x from the tmp.log file (cat tmp.log) is that possible or if there is any better way.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi All,
Has anyone used expect script in a shell script or vice versa. I have a script which would ssh and scp to other machines. I need to use expect script so that user does not have to enter the password everytime ssh/scp command is executed.
The script is as below. I need to pass the... (0 Replies)
Discussion started by: nua7
0 Replies
2. Shell Programming and Scripting
I am trying to write a shell script that launches an expect script and then use results of the expect script in the rest of the shell script.
The expect script is connecting to a remote host and looking up certian user info like UID and home directory. This part is working
I then want the... (2 Replies)
Discussion started by: kaltekar
2 Replies
3. Shell Programming and Scripting
Hi I have written one shell script , using that i am able to connect to remote machine but i have to
#!/usr/bin/expect -f
set address
set username
set password
set OOLpath
set dbusername
set dbpasswd
set tnsname
set recdbusername
set recdbpasswd
set rectnsname
spawn ssh... (1 Reply)
Discussion started by: mnmonu
1 Replies
4. Shell Programming and Scripting
I have the code like this :
shell script continues ...
....
expect -c"
spawn telnet $ip
expect "login:"
send \"$usrname\r\"
expect "Password:"
send \"$passwd\r\"
expect "*\>"
send \"$cmdstr\r\"
... (1 Reply)
Discussion started by: robbiezr
1 Replies
5. Programming
Hi All,
I am using a expect script to run a shell script on remote server, the code is as follows. But the problem is that it executes only first command, and hangs it doesn't run the next commands.
spawn ssh $uid@$host
expect "password:"
send "$password\r"
expect "*\r"
send... (2 Replies)
Discussion started by: yashwanthsn
2 Replies
6. Shell Programming and Scripting
Hi there,
I need some help regarding the execution of shell script from expect as the method I am trying is giving me error. I wrote an shell program which takes two arguments to telnet to a device and saves the output in a file. Following is the script.... (0 Replies)
Discussion started by: cyberparanoid
0 Replies
7. Shell Programming and Scripting
Hi All,
I have a expect script which is working for single server, but if i am trying to pass value of the variable inside expect, it is not working. Please see below :-
expect -c 'spawn ssh username@ip_address ; expect assword ; send "Password1\n" ; send "uptime \n" ; send "free -m \n" ;... (0 Replies)
Discussion started by: Renjesh
0 Replies
8. Shell Programming and Scripting
Dear friends,
Could you please help me in writing a sample code to connect the remote system (through ssh) using expect in shell script.
Thanks in advance.. :-) (1 Reply)
Discussion started by: rajesh.tulluri
1 Replies
9. Shell Programming and Scripting
Shell Scipt: temp.sh
su - <$username>
expect pass.exp
Expect script: pass.exp
#!/usr/bin/expect -f
# Login
#######################
expect "Password: " send "<$password>\r"
it comes up with Password: but doesnt take password passed throguh file. (2 Replies)
Discussion started by: bhavesh.sapra
2 Replies
10. Shell Programming and Scripting
Hi I have two scripts one is Expect and other is shell.
I want to merge Expect code in to Shell script so that i can run it using only one script. Can somebody help me out ?
Order to execute: Run Expect_install.sh first and then when installation completes run runTests.sh shell script.
... (1 Reply)
Discussion started by: ashish_neekhra
1 Replies