Sponsored Content
Top Forums Shell Programming and Scripting Expect script to save configuration from a router Post 302949209 by axexandru on Wednesday 8th of July 2015 06:46:01 AM
Old 07-08-2015
Expect script to save configuration from a router

Hy guys,

My name is Alex, i am new here and I hope to find some answers. I am trying to run a expect script to telnet to a mikrotik router, run a command (export), and save the output of that commant to a file (outputfile.txt). The problem is that only part of the output is saved to outputfile.txt.

Here is my code:

Code:
#!/usr/bin/expect -f
exp_internal 0
log_user 0
match_max -d 1000000

set timeout 30
spawn telnet 192.168.255.100
expect "Login: "
send "mktbk\r"
expect "Password: "
send "password\r"
expect "> "
send "export\r"
expect eof
puts [open outputfile.txt w] $expect_out(buffer)
expect "> "
send "quit\r"

I guess it's a buffer problem ..... got any ideas?

Thanks,
Alex
 

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. UNIX for Dummies Questions & Answers

how to save the output of command in tcl/expect

hi, everyone: I just wonder how to save the output of command, I mean everything, save as a string into a variable. another question is I try to ls the details of a directory, but it works in the shell, not in the script. for example code: ls -ltr *se100* | grep ^- | tail -1 | awk '... (1 Reply)
Discussion started by: allenxiao7
1 Replies

3. 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

4. Shell Programming and Scripting

Expect, save to file and remove before prompt

I have an Expect script which works very well. It logs into my remote routers and runs some commands and then to the next until finished. I need two things, first I need to save the output to a file from where the log_user 1 begins. expect << EOF set timeout 15 #set var "exit " match_max... (1 Reply)
Discussion started by: numele
1 Replies

5. Linux

How to save crontab configuration when using SSH?

Hi, I'm trying to save a crontab configuration using SSH, acessing a Linux machine from a Windows desktop. So, in the prompt I type "crontab -e", to edit crontab, and a window is opened. But after writing the changes, I press Save button but it seems not working, because when... (1 Reply)
Discussion started by: Roger75
1 Replies

6. 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

7. IP Networking

How to show Cisco Router Running Configuration in Third Party Application

Hey everyone, I have a few question. 1. Is it possible to display cisco 'show run' output command to the application ?? 2. And is there any ways to log in to the router instead of using telnet from telnet application??? Thanks in advance (0 Replies)
Discussion started by: franzramadhan
0 Replies

8. Programming

Reading a router configuration file

Hello C specialists, I'm trying to write a program to read out a binary configuration file produced by a router. But the output of Name and Value is cryptic. What's going wrong? The structure of the binary file is very simple: struct nvram_tuple { char *name; char *value; ... (5 Replies)
Discussion started by: digidax
5 Replies

9. Shell Programming and Scripting

Expect script brokes when Ping file save

Hi, For some reason I was needed to ping some URL and save the output to a file through Expect script, following is a very basic of that script, but it fails everytime. When I just copied the same 'ping' line to normal Terminal and run, it runs fine. Please, help. #!/bin/sh spawn ping -c 3... (1 Reply)
Discussion started by: santanu4ver
1 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
startslip(8)						      System Manager's Manual						      startslip(8)

NAME
startslip - Configures SLIP connections SYNOPSIS
/usr/sbin/startslip [-i filename] OPTIONS
Specifies the file containing the startslip subcommands for dial-out connections. DESCRIPTION
The startslip program configures two types of SLIP connections: Dial-in connections -- The system is to answer calls from remote systems. Dial-out connections -- The system is to place calls to a remote system. Dial-in Connections If your system is configured as a dial-in system, a getty process is continuously run on the serial line that is connected to a modem. When a call comes in, getty prompts for a login name. If the login name matches a SLIP user name entry in the /etc/passwd file, getty starts startslip as a login shell. The startslip program then reads the /etc/slhosts files until it finds an entry matching the current login name. If an entry is found, startslip configures the tty line as a SLIP link using information in the slhosts file entry. See Network Administration for information on setting up your system as a SLIP dial-in system. Dial-out Connections If your system is configured as a dial-out system and you want to create a SLIP connection to a remote system, you invoke the startslip program from the command line and specify -i filename. The filename file contains the startslip subcommands to set up the dial-out connec- tion (see the Subcommands section). After making the connection, startslip runs in the background. When you are finished with the SLIP connection, you can either turn off your modem or kill the tty process. The tty process ID is stored in the /var/run/ttyxx.tel-pid file, where ttyxx specifies the terminal line. Subcommands The following startslip subcommands can be used to set up SLIP dial-out connections. The subcommands are specified in a SLIP setup script file that is passed to startslip with the -i filename option. In the setup script file, any text following the comment character (#) is ignored. In addition, each line can contain up to 256 characters. Specifies the callback option. If this subcommand is specified, start- slip raises Data Terminal Ready (DTR) if carrier is lost during a read from the serial line. Causes startslip to configure the network interface with the values specified with the myip, dstip, and netmask subcommands, and to attach the serial line to the network interface. If the gateway is specified, it also adds the destination IP address as the default gateway. Specify this subcommand at the end of the script file. Specify the myip, dstip, netmask, and, optionally, gateway subcommands prior to connslip. Enables debugging and prints debug messages to the logfile file. Specify this subcommand at the beginning of the script file. Dials the telephone_number. The format of telephone_number is a string of numbers with no separators. Specify this subcommand after opentty and modemtype. Sets destination IP address. You can specify either a host name or IP address. Terminates startslip and exits. Causes startslip to wait to receive string from the remote host. If a match occurs, startslip continues read- ing this file. If a match does not occur after the specified seconds, startslip prints message and exits. Specify this subcommand after opentty. Flushes the read and write queues. Sets the destination IP address as the default gateway. Specifies a hard-wired link. Ignore modem control signals (CLOCAL flag set in termios structure) when switching to a SLIP connec- tion. Enables ICMP traffic suppression. Sets the modem type. The modem_name specified must be defined in the /etc/acucap file. Sets my local IP address. You can specify either a host name or IP address. Sets the network mask. Opens the ttyxx serial line and sets line speed to baud_rate. The value for baud_rate must be one of the standard speeds listed in </usr/include/sys/termios.h>. Prints string to the standard output; everything to the end of the line, including punctuation, is printed. Use this subcommand to cue the user as to which subcommand is executing. Causes startslip to read either the local IP address, destination IP address, or network mask from the remote system in dotted decimal notation. Use this subcommand after opentty. An expect subcommand should be used prior to raddr ensure that the desired information is read. Sends the string to the serial line. Use this subcommand after opentty. If string is set to the keyword ASKPASSWD, startslip prompts for a password, reads it from standard input, and sends it to the serial line. Causes startslip to sleep number_of_seconds before continuing to read subcommands. Displays current status of start- slip. Enables TCP header compression. Enables automatic TCP header compression. RESTRICTIONS
Only a person with superuser authority can run the startslip program. EXAMPLES
The following sample setup script file shows how to use various startslip dial-out subcommands. debug /tmp/debuglog myip 27.140.208.38 dstip 27.140.208.40 netmask 255.255.255.0 # set modemtype before dialing # microcom modem attributes defined in /etc/acucap modemtype microcom printmsg open /dev/tty00 at speed 38400 opentty tty00 speed 38400 printmsg dial 18154231234 dial 18154231234 # expect login prompt. timeout and exit after 5 seconds. expect ogin: timeout 5 errmsg "not getting login: prompt" printmsg send login send sliplogin # expect password prompt. timeout and exit after 5 seconds. expect assword: timeout 5 errmsg "not getting Password: prompt" printmsg Prompt and send password send ASKPASSWD # expect Starting SLIP after login expect SLIP timeout 10 errmsg "not getting startup message" # connect slip - ifconfig, slattach printmsg connect slip connslip FILES
Specifies the command path Contains the startslip process ID Specifies the termios header file SEE ALSO
Commands: ifconfig(8) Files: acucap(4), slhosts(4) Network Administration Specifications: A Nonstandard for Transmission of IP Datagrams Over Serial Lines: SLIP (RFC1055) Compressing TCP/IP Headers for Low-speed Serial Links (RFC1144) startslip(8)
All times are GMT -4. The time now is 03:25 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy