[Perl-unix-users] Reading Unix's top command

2003-10-01 Thread KGalal
Title: Reading Unix's top command





Hi,


In order to get an email advising me that a process is using too much %cpu, i wanted to be able to redirect the output of the Unix top command into a text file, then use regular expressions to get the data i need.

However, redirecting top's output into a file, ends up being one long line with a lot of  control-M characters and other funny characters like these:

1 running^M^[[BCpu states:^M^[[BCPU


Is there a way to parse the file, as you would go through a normal text file.


Thanks


Kareem Galal 
Unix Systems Administrator 
Financial Network Services.  
+61 2 9310 9895






Re: [Perl-unix-users] Reading Unix's top command

2003-10-01 Thread $Bill Luebkert
[EMAIL PROTECTED] wrote:
> Hi,
> 
> In order to get an email advising me that a process is using too much
> %cpu, i wanted to be able to redirect the output of the Unix top command
> into a text file, then use regular expressions to get the data i need.
> 
> However, redirecting top's output into a file, ends up being one long
> line with a lot of  control-M characters and other funny characters like
> these:
> 
> 1 running^M^[[BCpu states:^M^[[BCPU
> 
> Is there a way to parse the file, as you would go through a normal text
> file.

You could just convert the ^M (\r) to newlines and then you can remove
the escape sequences if needed or just work around them.

tr/\r/\n/;
or
s/\r/\n/gs;

-- 
  ,-/-  __  _  _ $Bill LuebkertMailto:[EMAIL PROTECTED]
 (_/   /  )// //   DBE CollectiblesMailto:[EMAIL PROTECTED]
  / ) /--<  o // //  Castle of Medieval Myth & Magic http://www.todbe.com/
-/-' /___/_<_http://dbecoll.tripod.com/ (My Perl/Lakers stuff)

___
Perl-Unix-Users mailing list
[EMAIL PROTECTED]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs


RE: [Perl-unix-users] Reading Unix's top command

2003-10-01 Thread KGalal
Title: RE: [Perl-unix-users] Reading Unix's top command





Thanks for the hint Bill, that has put the output file into some sort of readable format now.


Do you know what the following corresponds to, so i can get rid of it as well:


^[[B


thanks


Kareem


-Original Message-
From: $Bill Luebkert [mailto:[EMAIL PROTECTED]]
Sent: Thursday, 2 October 2003 12:15 PM
To: Kareem Galal
Cc: [EMAIL PROTECTED]
Subject: Re: [Perl-unix-users] Reading Unix's top command



[EMAIL PROTECTED] wrote:
> Hi,
> 
> In order to get an email advising me that a process is using too much
> %cpu, i wanted to be able to redirect the output of the Unix top command
> into a text file, then use regular expressions to get the data i need.
> 
> However, redirecting top's output into a file, ends up being one long
> line with a lot of  control-M characters and other funny characters like
> these:
> 
> 1 running^M^[[BCpu states:^M^[[BCPU
> 
> Is there a way to parse the file, as you would go through a normal text
> file.


You could just convert the ^M (\r) to newlines and then you can remove
the escape sequences if needed or just work around them.


    tr/\r/\n/;
or
    s/\r/\n/gs;


-- 
  ,-/-  __  _  _ $Bill Luebkert    Mailto:[EMAIL PROTECTED]
 (_/   /  )    // //   DBE Collectibles    Mailto:[EMAIL PROTECTED]
  / ) /--<  o // //  Castle of Medieval Myth & Magic http://www.todbe.com/
-/-' /___/_<_http://dbecoll.tripod.com/ (My Perl/Lakers stuff)





Re: [Perl-unix-users] Reading Unix's top command

2003-10-01 Thread $Bill Luebkert
[EMAIL PROTECTED] wrote:

> Thanks for the hint Bill, that has put the output file into some sort of
> readable format now.
> 
> Do you know what the following corresponds to, so i can get rid of it as
> well:
> 
> ^[[B

That's just a terminal sequence to position the cursor.
Do a search for ANSI terminal escape sequences to get a list.

ESC[PnB
Cursor Down: Moves the cursor down by the specified number of lines
without changing columns. If the cursor is already on the bottom line,
ANSI.SYS ignores this sequence.

> -Original Message-
> From: $Bill Luebkert [mailto:[EMAIL PROTECTED]
> Sent: Thursday, 2 October 2003 12:15 PM
> To: Kareem Galal
> Cc: [EMAIL PROTECTED]
> Subject: Re: [Perl-unix-users] Reading Unix's top command
> 
> 
> [EMAIL PROTECTED] wrote:
>> Hi,
>>
>> In order to get an email advising me that a process is using too much
>> %cpu, i wanted to be able to redirect the output of the Unix top command
>> into a text file, then use regular expressions to get the data i need.
>>
>> However, redirecting top's output into a file, ends up being one long
>> line with a lot of  control-M characters and other funny characters like
>> these:
>>
>> 1 running^M^[[BCpu states:^M^[[BCPU
>>
>> Is there a way to parse the file, as you would go through a normal text
>> file.
> 
> You could just convert the ^M (\r) to newlines and then you can remove
> the escape sequences if needed or just work around them.
> 
> tr/\r/\n/;
> or
> s/\r/\n/gs;


-- 
  ,-/-  __  _  _ $Bill LuebkertMailto:[EMAIL PROTECTED]
 (_/   /  )// //   DBE CollectiblesMailto:[EMAIL PROTECTED]
  / ) /--<  o // //  Castle of Medieval Myth & Magic http://www.todbe.com/
-/-' /___/_<_http://dbecoll.tripod.com/ (My Perl/Lakers stuff)

___
Perl-Unix-Users mailing list
[EMAIL PROTECTED]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs