Sponsored Content
Full Discussion: Expect script
Top Forums Shell Programming and Scripting Expect script Post 302332297 by System Shock on Wednesday 8th of July 2009 04:02:02 PM
Old 07-08-2009
There are a couple ways to send multiple commands without expect tags. But again, the basic thing here is to remember that expect acts as if you were typing commands. So, if you want to send commands one after the other without expecting anything, you should be able to do it just like you do it on the command line using a semicolon to separate the commands:
Code:
send "df -h; ls;cd /tmp\r"

If you want to set a temporary variable in the remote host, following what you have posted:
Code:
 send "data=\$\(df /var/crash | grep -v Filesystem | tr -s ' ' ' ' | cut -d ' ' -f4 \)\r"
     #note: the backlashes before the $ and (  are needed so theyread as a metacharacter and
     #not a literal $ and (  . You'll probably have to experiment with some other metacharacters
expect ".com"

Now you have a variable in the remote system which you can compare to something or just echo it.

A quick comment about setting passwordless logins, you can actually set that up with expect as well. Remember, the script doesn't run in 1000 servers, it runs in one place where it logs into 1000 servers Smilie

another quick edit, you don't need all those sleep commands.

One more thing... if /var/crash in not a separate file system, the df command will return the size of /var , not /var/crash

Last edited by System Shock; 07-08-2009 at 05:09 PM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

strange expect script behavior, or am i misunderstanding expect scripting?

Hello to all...this is my first post (so please go easy). :) I feel pretty solid at expect scripting, but I'm running into an issue that I'm not able to wrap my head around. I wrote a script that is a little advanced for logging into a remote Linux machine and changing text in a file using sed.... (2 Replies)
Discussion started by: v1k0d3n
2 Replies

2. Shell Programming and Scripting

Need help with Expect script for Cisco IPS Sensors, Expect sleep and quoting

This Expect script provides expect with a list of IP addresses to Cisco IPS sensors and commands to configure Cisco IPS sensors. The user, password, IP addresses, prompt regex, etc. have been anonymized. In general this script will log into the sensors and send commands successfully but there are... (1 Reply)
Discussion started by: genewolfe
1 Replies

3. Programming

Expect script to run a Shell script on remote server

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

4. Shell Programming and Scripting

Expect script help needed- script failing if router unavailable

Hey all. Sometimes I'm tasked to change some router configs for the entire network (over 3,000 Cisco routers). Most of the time its a global config parameter so its done with a loop and an IP list as its the same configuration change for all routers. This is working OK. However, sometimes an... (3 Replies)
Discussion started by: mrkz1974
3 Replies

5. Shell Programming and Scripting

Expect script to execute a script on a remote host

Hi, I am new to the expect scripting. I have this expect script as below : spawn ssh remote_server -l id set pass "12345" set opt "s" expect "Password:" {send "$pass\r" ; } expect "*ENTER*" {send "Enter\r"; exp_continue } expect "Please select option :" {send... (2 Replies)
Discussion started by: curt137
2 Replies

6. Programming

Calling expect script inside another expect

Hi, Am very new to expect scripting.. Can You please suggest me how to call an expect script inside another expect script.. I tried with spawn /usr/bin/ksh send "expect main.exp\r" expect $root_prompt and spawn /usr/bin/ksh send "main.exp\r" expect $root_prompt Both... (1 Reply)
Discussion started by: Priya Amaresh
1 Replies

7. UNIX for Advanced & Expert Users

Unable to run the script on remote machine Using Expect script

Not able to execute the file in remote host using except utility I am automating the SFTP keys setp process: So i created the expect script for controlling the output of shell below is my main code: Code: #!/usr/bin/expect set fd set password close $fd set df set app close $df... (1 Reply)
Discussion started by: Manoj Bajpai
1 Replies

8. Programming

Calling another expect script inside an expect script

I have an expect script called remote that I want to call from inside my expect script called sudoers.push, here is the code that is causing me issues: set REMOTE "/root/scripts/remote" ... log_user 1 send_user "Executing remote script as $user...\n" send_user "Command to execute is: $REMOTE... (1 Reply)
Discussion started by: brettski
1 Replies

9. Shell Programming and Scripting

SFTP or scp with password in a batch script without using SSH keys and expect script

Dear All, I have a requirement where I have to SFTP or SCP a file in a batch script. Unfortunately, the destination server setup is such that it doesn't allow for shell command line login. So, I am not able to set up SSH keys. My source server is having issues with Expect. So, unable to use... (5 Replies)
Discussion started by: ss112233
5 Replies

10. Programming

Expect script returning string following a found expect.

I'm fairly new to scripting so this might not be possible. I am using Expect with Cisco switches and need to capture the string after finding the expect request. For example, when I issue "show version" on a Nexus switch, I'm looking to capture the current firmware version: #show version ... (0 Replies)
Discussion started by: IBGaryA
0 Replies
CRASH(8)						    BSD System Manager's Manual 						  CRASH(8)

NAME
crash -- examine and debug system images SYNOPSIS
crash [-M core] [-N kernel] DESCRIPTION
The crash command is used to examine and debug system images. If run without any arguments, crash operates on the running system. The options are as follows: -M core Operate on the specified crash dump instead of the default /dev/mem. Crash dumps should be from the same version of the system and same machine architecture as the running version of crash, and must be uncompressed. -N kernel Extract the name list from the specified kernel instead of the default /dev/ksyms. The command syntax used by crash is the same as the in-kernel debugger. See the ddb(4) manual page for more information. Operations and facilities that require a running system, such as breakpoints, are not supported by crash. crash does not provide pagination. However, by using the pipe symbol, output may be sent to commands available from the shell. For example: crash> ps | more crash> ps | grep ioflush SEE ALSO
ps(1), vmstat(1), ddb(4), pstat(8) HISTORY
The crash command appeared in NetBSD 6.0. BSD
March 7, 2009 BSD
All times are GMT -4. The time now is 11:08 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy