Sponsored Content
Full Discussion: Parsing Array - Newbie
Top Forums Shell Programming and Scripting Parsing Array - Newbie Post 302362271 by xmaverick on Thursday 15th of October 2009 12:28:20 PM
Old 10-15-2009
Parsing Array - Newbie

Hello,

I'm a newbie to the world of programming and so i decided to learn perl. I'm working on a project that telnets into a Cisco router and eliminates a specific line but i can't seem to get the thing to work. I dump the output into an array but i'm having a difficult time looking for the string in the array. Any suggestions? Here is the code:

Code:
#!/usr/bin/perl -w

use strict;
use warnings;
use Net::Telnet;

my $ip = $ARGV[0];
my $pass = "xxxx";
my $pass2 = "xxxxx";
my $t=new Net::Telnet(Errmode=>'return',Input_Log => "/tmp/input.log", Output_Log =>
"/tmp/output.log",Timeout=>30);
my $file = "/tmp/input.log";


$t->open($ip);
 if($t->errmsg) { my $err=$t->errmsg; return $err; }
 my ($prompt) = $t->waitfor('/Password: $/');
    if($t->errmsg) { my $err=$t->errmsg; return $err; }
    $t->print("$pass");
    $t->waitfor('/>$)/');
    $t->print('en');
    $t->waitfor('/Password: $/');
    $t->print("$pass2");
    $t->waitfor('/#$/');
    my @out=$t->cmd(String=>'sh run | inc connect',Prompt=>'/#$/');
    my $line = @out;
    t->print("config t");
    $t->waitfor('/#$/');
    $t->print(" no $line") if $line =~ '/^connect sgsn/';
    $t->waitfor('/#$/');
    $t->print("end");
    $t->waitfor('/#$/');
    $t->print("logout");
   
   


    
    
    ##### email results of cross connect bounce ####

    my $to = 'xxxx.xxx@xxx.com';
    chomp (my $date=`date '+%H:%M:%S %Z %a %b %e %Y'`);
    
    my $subj="\"Cross Connects Bounced\"";
                open(MAILX, "|/usr/bin/mailx -s $subj $to");
                print MAILX "The cross connects for $ip were bounced at $date, @out\n";
                close(MAILX);


Once the script logs into the router it executes a "sh run | inc connect " and dumps an output like so into an array.
Code:
connect sgsn Serial1/0:6 701 l2transport
xconnect 172.19.231.227 701 pw-class fr-xconnect

The next job is to search for the connect sgsn Serial1/0:6 701 l2transport to see if it has it in the array and if it does i want the script to type into the prompt "no connect sgsn Serial1/0:6 701 l2transport"

Last edited by pludi; 10-15-2009 at 02:51 PM.. Reason: code tags, please...
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Perl parsing compared to Ksh parsing

#! /usr/local/bin/perl -w $ip = "$ARGV"; $rw = "$ARGV"; $snmpg = "/usr/local/bin/snmpbulkget -v2c -Cn1 -Cn2 -Os -c $rw"; $snmpw = "/usr/local/bin/snmpwalk -Os -c $rw"; $syst=`$snmpg $ip system sysName sysObjectID`; sysDescr.0 = STRING: Cisco Internetwork Operating System Software... (1 Reply)
Discussion started by: popeye
1 Replies

2. Shell Programming and Scripting

Parsing of file for Report Generation (String parsing and splitting)

Hey guys, I have this file generated by me... i want to create some HTML output from it. The problem is that i am really confused about how do I go about reading the file. The file is in the following format: TID1 Name1 ATime=xx AResult=yyy AExpected=yyy BTime=xx BResult=yyy... (8 Replies)
Discussion started by: umar.shaikh
8 Replies

3. UNIX for Dummies Questions & Answers

UNIX newbie NEWBIE question!

Hello everyone, Just started UNIX today! In our school we use solaris. I just want to know how do I setup Solaris 10 not the GUI one, the one where you have to type the commands like ECHO, ls, pwd, etc... I have windows xp and I also have vmware. I hope I am not missing anything! :p (4 Replies)
Discussion started by: Hanamachi
4 Replies

4. Shell Programming and Scripting

perl newbie . &&..programming newbie (question 2)

Hello everyone, I am having to do a lot of perl scripting these days and I am learning a lot. I have this problem I want to move files from a folder and all its sub folders to one parent folder, they are all .gz files.. there is folder1\folder2\*.gz and there are about 50 folders... (1 Reply)
Discussion started by: xytiz
1 Replies

5. Shell Programming and Scripting

perl newbie . &&..programming newbie

Hi, I am new to programming and also to perl..But i know 'perl' can come to my rescue, But I am stuck at many places and need help..any small help is much appreciated... below is the description of what i intend to acheive with my script. I have a files named in this format... (13 Replies)
Discussion started by: xytiz
13 Replies

6. Shell Programming and Scripting

Parsing XML elements and store them in array

Hi Friends Im so confused with using 'for' loop in ksh. I have a xml like the following: <serviceProvider> <serviceProviderID>1</serviceProviderID> <serviceProviderName>Balesh</serviceProviderName> <serviceFeeAmount>30.00</serviceFeeAmount> </serviceProvider>... (2 Replies)
Discussion started by: balesh
2 Replies

7. Shell Programming and Scripting

PERL : Read an array and write to another array with intial string pattern checks

I have an array and two variables as below, I need to check if $datevar is present in $filename. If so, i need to replace $filename with the values in the array. I need the output inside an ARRAY How can this be done. Any help will be appreciated. Thanks in advance. (2 Replies)
Discussion started by: irudayaraj
2 Replies

8. Shell Programming and Scripting

Looking for help with parsing file contents in bash [newbie]

Hi I'm just messing around with bash and trying to learn it because I have a course next semester dealing with OS design where we need to know how to use SSH client and either bash or ksh. I've never done shell scripting before. I just started today and I was wondering how parsing files... (1 Reply)
Discussion started by: mehungry
1 Replies

9. Shell Programming and Scripting

Bash 3.2 - Array / Regex - IF 3rd member in array ends in 5 digits then do somthing...

Trying to do some control flow parsing based on the index postion of an array member. Here is the pseudo code I am trying to write in (preferably in pure bash) where possible. I am thinking regex with do the trick, but need a little help. pesudo code if == ENDSINFIVEINTS ]]; then do... (4 Replies)
Discussion started by: briandanielz
4 Replies

10. Shell Programming and Scripting

Newbie help - parsing through a file

Hello guys, I am a newbie to all of this - I'd like some help with a file I have. It's a ~100mb CSV file with approximately 30 columns. What I'd like to do is to search through the file and REMOVE any lines with a certain case insensitive string in any of the columns: So my file looks... (4 Replies)
Discussion started by: Lokhtar
4 Replies
VOP_FSYNC(9)						   BSD Kernel Developer's Manual					      VOP_FSYNC(9)

NAME
VOP_FSYNC -- flush file system buffers for a file SYNOPSIS
#include <sys/param.h> #include <sys/vnode.h> int VOP_FSYNC(struct vnode *vp, int waitfor, struct thread *td); DESCRIPTION
This call flushes any dirty file system buffers for the file. It is used to implement the sync(2) and fsync(2) system calls. Its arguments are: vp The vnode of the file. waitfor Whether the function should wait for I/O to complete. Possible values are: MNT_WAIT Synchronously wait for I/O to complete. MNT_NOWAIT Start all I/O, but do not wait for it. MNT_LAZY Push data not written by file system syncer. td The calling thread. The argument waitfor is either MNT_WAIT or MNT_NOWAIT and specifies whether or not the function should wait for the writes to finish before returning. LOCKS
The file should be locked on entry. RETURN VALUES
Zero is returned if the call is successful, otherwise an appropriate error code is returned. ERRORS
[ENOSPC] The file system is full. [EDQUOT] Quota exceeded. SEE ALSO
vnode(9) AUTHORS
This manual page was written by Doug Rabson. BSD
July 24, 1996 BSD
All times are GMT -4. The time now is 11:41 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy