Sponsored Content
Top Forums Shell Programming and Scripting Filtering escape character from expect buffer Post 302894074 by cityprince143 on Monday 24th of March 2014 12:59:07 AM
Old 03-24-2014
Filtering escape character from expect buffer

I have written an application in Tcl-Expect which spawns minicom and
sends and receives data via the serial port. Sometimes i see that the
application receives control characters along with human readable data.
A search on the internet tells me that the control characters are
nothing but the VT terminal codes. However i could not find a solution
to filter out the terminal codes.

I am attaching a sample of the expected buffer and the actual buffer.

Expected :-
Code:
Microsoft Windows [Version 6.2.9200](c) 2012 Microsoft Corporation. All rights reserved. C:\Windows\system32>


Actual:-
Code:
[1;1H[37m[40m [2;1H [3;1H [4;1H [5;1H [6;1H [7;1H [8;1H [9;1H [10;1H [11;1H [12;1H [13;1H [14;1H [15;1H [16;1H [17;1H [18;1H [19;1H [20;1H [21;1H [22;1H [23;1H [24;1H [1;1HMicrosoft Windows [Version 6.2.9200][2;1H(c) 2012 Microsoft Corporation. All rights reserved.[4;1HC:Windowssystem32>


Last edited by Franklin52; 03-24-2014 at 04:21 AM.. Reason: Please use code tags
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Escape character in vi?

I want to replace a string which contains "/" in vi but what is the escape character for forward slash? e.g. I have a text file with the contents below and I want to replace "/Top/Sub/Sub1" with "ABC". /Top/Sub/Sub1 The replace command I am using is ... (4 Replies)
Discussion started by: stevefox
4 Replies

2. Shell Programming and Scripting

awk / escape character

Hi I'm trying to split a dir listing eg /home/foo1/foo2 I'm using ksh I've tried dir=/home/foo1/foo2 splitit=`echo $dir | awk -F '\/' '{print $1}'` echo $splitit nothing is output! I have checked the escape character. The only one I have found is \ BTW `pwd` | awk -F \/... (8 Replies)
Discussion started by: OFFSIHR
8 Replies

3. Shell Programming and Scripting

Escape character

Hi , I want to change space to ' in my script. I tried doing this, sed 's/ /\'/g' filename but i could not get it. can some one help me please. Thanks, Deepak (4 Replies)
Discussion started by: deepakpv
4 Replies

4. Shell Programming and Scripting

Expect buffer size increase, please help

Hi Group, I am struggling to increase buffer size of expect, sometimes after increasing the buffer size, expect captures all my expected output, sometimes not, :-( I tried match_max 700000 set expect_out(buffer) {} Could anybody guide me for any solution. HTH,... (1 Reply)
Discussion started by: jaduks
1 Replies

5. Shell Programming and Scripting

escape character in tcsh

Hello, I wanted to display command with echo like this in tcsh. output should be "//'test.test1.test2'" (" at both ends also required in output) Please help me. (1 Reply)
Discussion started by: balareddy
1 Replies

6. Shell Programming and Scripting

Expect: How to read buffer for spawn

Hi All, I have to write one expect script to login to one system. I am using set timeout -1 match_max 100000 spawn ssh root@hostname Now when I do spawn ssh to that host it send some warning message and one challenge Challenge: 111-2345 I need to read this challenge value and has... (1 Reply)
Discussion started by: Lokesh Agrawal
1 Replies

7. Shell Programming and Scripting

EXPECT help with full buffer(?), or other available solutions

First, to level set: I'm proficient enough with basic BASH scripting for simple things (say, 4 out of 10), but this current project really requires a higher understanding of EXPECT than I have. I have an interactive-only control application residing locally on a database server that I would... (2 Replies)
Discussion started by: toeharp
2 Replies

8. Shell Programming and Scripting

How to escape Special Characters in Expect programming?

Hi, I have written a unix expect utility "ssh-login.exp" which connects (ssh) to remote host and execute some shell script. I am calling this "ssh-login.exp" utility from another shell script. "ssh-login.exp" takes username, password, host and shell script path to execute on remote host. All... (1 Reply)
Discussion started by: Mahesh Desai
1 Replies

9. Shell Programming and Scripting

Function to add escape character before specified character

Hi , I am looking for a function which will do the following. 1. I have a variable which will hold few special chracter like SPECIAL_CHARS="& ;"2. I have an escape character. ESCAPE_CHAR="\"3. Now when I passed some string in the function it will return the same string but now it will... (8 Replies)
Discussion started by: Anupam_Halder
8 Replies

10. UNIX for Beginners Questions & Answers

Extracting some part of Perl's Expect Buffer

Hi, I am capturing command's output on remote host using Expect. The problem is that the command line arguments also getting print with the output in file and also need to print last two relevant columns (percentage used and its mounted point). The output of $exp->before() buffer is :df... (1 Reply)
Discussion started by: suneet17
1 Replies
DISLOCATE(1)						      General Commands Manual						      DISLOCATE(1)

NAME
Dislocate - disconnect and reconnect processes SYNOPSIS
dislocate [ program args... ] INTRODUCTION
Dislocate allows processes to be disconnected and reconnected to the terminal. Possible uses: o You can disconnect a process from a terminal at work and reconnect from home, to continue working. o After having your line be dropped due to noise, you can get back to your process without having to restart it from scratch. o If you have a problem that you would like to show someone, you can set up the scenario at your own terminal, disconnect, walk down the hall, and reconnect on another terminal. o If you are in the middle of a great game (or whatever) that does not allow you to save, and someone else kicks you off the ter- minal, you can disconnect, and reconnect later. USAGE
When run with no arguments, Dislocate tells you about your disconnected processes and lets you reconnect to one. Otherwise, Dislocate runs the named program along with any arguments. By default, ^] is an escape that lets you talk to Dislocate itself. At that point, you can disconnect (by pressing ^D) or suspend Dislo- cate (by pressing ^Z). Any Tcl or Expect command is also acceptable at this point. For example, to insert the contents of a the file /etc/motd as if you had typed it, say: send -i $out [exec cat /etc/motd] To send the numbers 1 to 100 in response to the prompt "next #", say: for {set i 0} {$i<100} {incr i} { expect -i $in "n"xt #" send -i $out "$i } Scripts can also be prepared and sourced in so that you don't have to type them on the spot. Dislocate is actually just a simple Expect script. Feel free to make it do what you want it to do or just use Expect directly, without going through Dislocate. Dislocate understands a few special arguments. These should appear before any program name. Each should be sep- arated by whitespace. If the arguments themselves takes arguments, these should also be separated by whitespace. The -escape flag sets the escape to whatever follows. The default escape is ^]. CAVEATS
This program was written by the author as an exercise to show that communicating with disconnected processes is easy. There are many fea- tures that could be added, but that is not the intent of this program. SEE ALSO
Tcl(3), libexpect(3) "Exploring Expect: A Tcl-Based Toolkit for Automating Interactive Programs" by Don Libes, O'Reilly and Associates, January 1995. AUTHOR
Don Libes, National Institute of Standards and Technology 7 October 1993 DISLOCATE(1)
All times are GMT -4. The time now is 09:47 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy