formating output

I have a file proc.txt which contains the below one.

Content-type: text/html

<H2>No query</H2>
infodba-marabou:/tmp
=> export QUERY_STRING="IMAN_server_report=full"
infodba-marabou:/tmp
=> $IMAN_ROOT/web/htdocs/cgi-bin/iman > /tmp/proc.txt
infodba-marabou:/tmp
=> cat proc.txt
Content-type: text/html

<HTML><META HTTP-EQUIV="REFRESH" CONTENT=10><HEAD><TITLE>TcEng Web server report</TITLE>
</HEAD><BODY>
<H1>TcEng Web server report</H1>
<p>Thu Feb 1 00:16:43 2007 - I am alive and well (pid 712), up since Sat Dec 16 22:26:32 2006</p>
<p>click <a href=/iman>here</a> to login to this server</p>
<p>click <a href="/cgi-bin/iman?IMAN_server_report">here</a> for a shortened report</p><p>click <a href="/cgi-
bin/iman?IMAN_server_report=xml">here</a> for an xml report</p><p>Completed 47155 out of 47183 queries; averag
e runtime 2.252 secs (4 timeouts).</p>

<hr>
<H2>Preferences</H2><pre>
Port number: 8181
Select time: 18000
Heartbeat time: 1000
Query time limit: 18000
Maximum number of queries: 750
Minimum number of free processes: 1
Maximum number of processes: 500
Soft login timeout: 120
Hard login timeout: 36000
Process lifespan (in queries): 10000
Maximum login processes per user: 1
Maximum retries on blocked sockets (Windows only): 5
Maximum concurrent logins 500
Maximum CPU usage 80
CPU usage monitoring 0
CPU usage check interval 10
Maximum no of requests/user in queue 5
Maximum length of the queue of pending connections 128
Number of active file descriptors: 1760
Monitoring switch: 1
Internal buffer size: 16384
IMANScript program: /Application/ugs/tceng/tceng0912/web/bin/imanscript
IMAN Document Root: /Application/ugs/tceng/tceng0912/web/htdocs
IMAN Environment:

</pre>
<hr>
<H2>Processes</H2><table align=center width=100% border=1><tr><th>No.</th><th>State</th><th>Query</th><th>Time
s</th><th>User</th><th>Processed</th><th>Syslog</th></tr><tr><td>1</td><td>ready</td><td>�</td><td>idle 4
6s</td><td>�</td><td>1</td><td>/Application/ugsvols/bldata01/logs/imanscript9994.syslog</td></tr><tr><td>
2</td><td>ready</td><td>�</td><td>idle 937s</td><td>�</td><td>1</td><td>/Application/ugsvols/bldata0
1/logs/imanscript7599.syslog</td></tr><tr><td>3</td><td>ready</td><td>�</td><td>idle 469s</td><td>X036091
�</td><td>24</td><td>/Application/ugsvols/bldata01/logs/imanscript1963.syslog</td></tr><tr><td>4</td><td>
ready</td><td>�</td><td>idle 7842s</td><td>X045672�</td><td>7</td><td>/Application/ugsvols/bldata01/
logs/imanscript16225.syslog</td></tr><tr><td>5</td><td>ready</td><td>�</td><td>idle 9989s</td><td>X035077
�</td><td>5</td><td>/Application/ugsvols/bldata01/logs/imanscript10210.syslog</td></tr><tr><td>6</td><td>
ready</td><td>�</td><td>idle 13089s</td><td>X035466�</td><td>5</td><td>/Application/ugsvols/bldata01
/logs/imanscript561.syslog</td></tr><tr><td>7</td><td>ready</td><td>�</td><td>idle 18113s</td><td>103818&
nbsp;</td><td>5</td><td>/Application/ugsvols/bldata01/logs/imanscript16278.syslog</td></tr><tr><td>8</td><td>r
eady</td><td>�</td><td>idle 11560s</td><td>X039371�</td><td>15</td><td>/Application/ugsvols/bldata01
/logs/imanscript15120.syslog</td></tr><tr><td>9</td><td>ready</td><td>�</td><td>idle 20340s</td><td>22320
�</td><td>4</td><td>/Application/ugsvols/bldata01/logs/imanscript25488.syslog</td></tr><tr><td>10</td><td
>ready</td><td>�</td><td>idle 27042s</td><td>�</td><td>1</td><td>/Application/ugsvols/bldata01/logs/
imanscript20999.syslog</td></tr><tr><td>11</td><td>ready</td><td>�</td><td>idle 27504s</td><td>101568&nbs
p;</td><td>13</td><td>/Application/ugsvols/bldata01/logs/imanscript19396.syslog</td></tr><tr><td>12</td><td>re
ady</td><td>�</td><td>idle 29098s</td><td>64920�</td><td>10</td><td>/Application/ugsvols/bldata01/lo
gs/imanscript14646.syslog</td></tr><tr><td>13</td><td>ready</td><td>�</td><td>idle 30198s</td><td>X030111
�</td><td>3</td><td>/Application/ugsvols/bldata01/logs/imanscript7582.syslog</td></tr><tr><td>14</td><td>
ready</td><td>�</td><td>idle 31676s</td><td>X041708�</td><td>42</td><td>/Application/ugsvols/bldata0
1/logs/imanscript7183.syslog</td></tr><tr><td>15</td><td>ready</td><td>�</td><td>idle 34199s</td><td>6773
3�</td><td>40</td><td>/Application/ugsvols/bldata01/logs/imanscript18706.syslog</td></tr><tr><td>16</td><
td>ready</td><td>�</td><td>idle 31602s</td><td>79826�</td><td>14</td><td>/Application/ugsvols/bldata
01/logs/imanscript22502.syslog</td></tr><tr><td>17</td><td>ready</td><td>�</td><td>idle 51645s</td><td>&n
bsp;</td><td>1</td><td>/Application/ugsvols/bldata01/logs/imanscript12580.syslog</td></tr><tr><td>18</td><td>r
eady</td><td>�</td><td>idle 30371s</td><td>11421�</td><td>34</td><td>/Application/ugsvols/bldata01/l
ogs/imanscript29761.syslog</td></tr><tr><td>19</td><td>ready</td><td>�</td><td>idle 56147s</td><td>�
</td><td>1</td><td>/Application/ugsvols/bldata01/logs/imanscript29658.syslog</td></tr><tr><td>20</td><td>ready
</td><td>�</td><td>idle 30908s</td><td>X035887�</td><td>74</td><td>/Application/ugsvols/bldata01/log
s/imanscript20039.syslog</td></tr><tr><td>21</td><td>ready</td><td>�</td><td>idle 31650s</td><td>X042268&
nbsp;</td><td>95</td><td>/Application/ugsvols/bldata01/logs/imanscript14166.syslog</td></tr><tr><td>22</td><td
>ready</td><td>�</td><td>idle 34610s</td><td>X044587�</td><td>242</td><td>/Application/ugsvols/bldat
a01/logs/imanscript929.syslog</td></tr><tr><td>23</td><td>ready</td><td>�</td><td>idle 80449s</td><td>&nb
sp;</td><td>1</td><td>/Application/ugsvols/bldata01/logs/imanscript18783.syslog</td></tr><tr><td>24</td><td>re
ady</td><td>�</td><td>idle 84051s</td><td>�</td><td>1</td><td>/Application/ugsvols/bldata01/logs/ima
nscript5679.syslog</td></tr></table>
<hr>
<H2>Queries</H2><p>No queries.</p>

<hr>
<h2>Recently deceased processes</h2><table border=1><tr><th>username</th><th>syslog</th></tr>
<tr><td>90927�</td><td>/Application/ugsvols/bldata01/logs/imanscript28329.syslog</td></tr>
<tr><td>11920�</td><td>/Application/ugsvols/bldata01/logs/imanscript12775.syslog</td></tr>
<tr><td>83144�</td><td>/Application/ugsvols/bldata01/logs/imanscript16492.syslog</td></tr>
<tr><td>�</td><td>/Application/ugsvols/bldata01/logs/imanscript23739.syslog</td></tr>
<tr><td>11403�</td><td>/Application/ugsvols/bldata01/logs/imanscript10134.syslog</td></tr>
<tr><td>�</td><td>/Application/ugsvols/bldata01/logs/imanscript23248.syslog</td></tr>
<tr><td>�</td><td>/Application/ugsvols/bldata01/logs/imanscript23153.syslog</td></tr>
<tr><td>X033586�</td><td>/Application/ugsvols/bldata01/logs/imanscript1533.syslog</td></tr>
<tr><td>X037095�</td><td>/Application/ugsvols/bldata01/logs/imanscript5629.syslog</td></tr>
<tr><td>91011�</td><td>/Application/ugsvols/bldata01/logs/imanscript9653.syslog</td></tr>
</table>

In the above i have to get the process id's and idle time as per the above format

for eg in the above you can see the first occurace idle sec's idle 46s and then process for this is 9994 where we have to cut the process id from /Application/ugsvols/bldata01/logs/imanscript9994.syslog the same way we have to see the next occurance of idle secs and process id associated with that. Then i have to kill if the idle secs is greater then 20000sec's is that possible using shell script.

With GNU awk:

$(awk '/idle/{sub(/s.*/,"",$2);if($2>20000)print "kill -9",$3}' \
FS="idle |/logs/imanscript" RS=".syslog" file)

itz not giving me the correct output

its giving me less than 20000 sec's processes also.

can you explain me the above command or can you just get only both idle processes time mapped with process id alone in the output.

Are you using GNU awk?

$ cat file
Content-type: text/html

<H2>No query</H2>
infodba-marabou:/tmp
=> export QUERY_STRING="IMAN_server_report=full"
infodba-marabou:/tmp
=> $IMAN_ROOT/web/htdocs/cgi-bin/iman > /tmp/proc.txt
infodba-marabou:/tmp
=> cat proc.txt
Content-type: text/html

<HTML><META HTTP-EQUIV="REFRESH" CONTENT=10><HEAD><TITLE>TcEng Web server report</TITLE>
</HEAD><BODY>
<H1>TcEng Web server report</H1>
<p>Thu Feb 1 00:16:43 2007 - I am alive and well (pid 712), up since Sat Dec 16 22:26:32 2
006</p>
<p>click <a href=/iman>here</a> to login to this server</p>
<p>click <a href="/cgi-bin/iman?IMAN_server_report">here</a> for a shortened report</p><p>
click <a href="/cgi-bin/iman?IMAN_server_report=xml">here</a> for an xml report</p><p>Comp
leted 47155 out of 47183 queries; averag
e runtime 2.252 secs (4 timeouts).</p>

<hr>
<H2>Preferences</H2><pre>
Port number: 8181
Select time: 18000
Heartbeat time: 1000
Query time limit: 18000
Maximum number of queries: 750
Minimum number of free processes: 1
Maximum number of processes: 500
Soft login timeout: 120
Hard login timeout: 36000
Process lifespan (in queries): 10000
Maximum login processes per user: 1
Maximum retries on blocked sockets (Windows only): 5
Maximum concurrent logins 500
Maximum CPU usage 80
CPU usage monitoring 0
CPU usage check interval 10
Maximum no of requests/user in queue 5
Maximum length of the queue of pending connections 128
Number of active file descriptors: 1760
Monitoring switch: 1
Internal buffer size: 16384
IMANScript program: /Application/ugs/tceng/tceng0912/web/bin/imanscript
IMAN Document Root: /Application/ugs/tceng/tceng0912/web/htdocs
IMAN Environment:

</pre>
<hr>
<H2>Processes</H2><table align=center width=100% border=1><tr><th>No.</th><th>State</th><t
h>Query</th><th>Time s</th><th>User</th><th>Processed</th><th>Syslog</th></tr><tr><td>1</t
d><td>ready</td><td>�</td><td>idle 46s</td><td>�</td><td>1</td><td>/Application/
ugsvols/bldata01/logs/imanscript9994.syslog</td></tr><tr><td>2</td><td>ready</td><td>&nbsp
;</td><td>idle 937s</td><td>�</td><td>1</td><td>/Application/ugsvols/bldata01/logs/im
anscript7599.syslog</td></tr><tr><td>3</td><td>ready</td><td>�</td><td>idle 469s</td>
<td>X036091�</td><td>24</td><td>/Application/ugsvols/bldata01/logs/imanscript1963.sys
log</td></tr><tr><td>4</td><td>ready</td><td>�</td><td>idle 7842s</td><td>X045672&nbs
p;</td><td>7</td><td>/Application/ugsvols/bldata01/logs/imanscript16225.syslog</td></tr><t
r><td>5</td><td>ready</td><td>�</td><td>idle 9989s</td><td>X035077 �</td><td>5</
td><td>/Application/ugsvols/bldata01/logs/imanscript10210.syslog</td></tr><tr><td>6</td><t
d>ready</td><td>�</td><td>idle 13089s</td><td>X035466�</td><td>5</td><td>/Applic
ation/ugsvols/bldata01/logs/imanscript561.syslog</td></tr><tr><td>7</td><td>ready</td><td>
�</td><td>idle 18113s</td><td>103818�</td><td>5</td><td>/Application/ugsvols/bld
ata01/logs/imanscript16278.syslog</td></tr><tr><td>8</td><td>ready</td><td>�</td><td>
idle 11560s</td><td>X039371�</td><td>15</td><td>/Application/ugsvols/bldata01/logs/im
anscript15120.syslog</td></tr><tr><td>9</td><td>ready</td><td>�</td><td>idle 20340s</
td><td>22320�</td><td>4</td><td>/Application/ugsvols/bldata01/logs/imanscript25488.sy
slog</td></tr><tr><td>10</td><td>ready</td><td>�</td><td>idle 27042s</td><td>�</
td><td>1</td><td>/Application/ugsvols/bldata01/logs/imanscript20999.syslog</td></tr><tr><t
d>11</td><td>ready</td><td>�</td><td>idle 27504s</td><td>101568�</td><td>13</td>
<td>/Application/ugsvols/bldata01/logs/imanscript19396.syslog</td></tr><tr><td>12</td><td>
ready</td><td>�</td><td>idle 29098s</td><td>64920�</td><td>10</td><td>/Applicati
on/ugsvols/bldata01/logs/imanscript14646.syslog</td></tr><tr><td>13</td><td>ready</td><td>
�</td><td>idle 30198s</td><td>X030111 �</td><td>3</td><td>/Application/ugsvols/b
ldata01/logs/imanscript7582.syslog</td></tr><tr><td>14</td><td>ready</td><td>�</td><t
d>idle 31676s</td><td>X041708�</td><td>42</td><td>/Application/ugsvols/bldata01/logs/
imanscript7183.syslog</td></tr><tr><td>15</td><td>ready</td><td>�</td><td>idle 34199s
</td><td>67733�</td><td>40</td><td>/Application/ugsvols/bldata01/logs/imanscript18706
.syslog</td></tr><tr><td>16</td><td>ready</td><td>�</td><td>idle 31602s</td><td>79826
�</td><td>14</td><td>/Application/ugsvols/bldata01/logs/imanscript22502.syslog</td></
tr><tr><td>17</td><td>ready</td><td>�</td><td>idle 51645s</td><td>�</td><td>1</t
d><td>/Application/ugsvols/bldata01/logs/imanscript12580.syslog</td></tr><tr><td>18</td><t
d>ready</td><td>�</td><td>idle 30371s</td><td>11421�</td><td>34</td><td>/Applica
tion/ugsvols/bldata01/logs/imanscript29761.syslog</td></tr><tr><td>19</td><td>ready</td><t
d>�</td><td>idle 56147s</td><td>�</td><td>1</td><td>/Application/ugsvols/bldata0
1/logs/imanscript29658.syslog</td></tr><tr><td>20</td><td>ready</td><td>�</td><td>idl
e 30908s</td><td>X035887�</td><td>74</td><td>/Application/ugsvols/bldata01/logs/imans
cript20039.syslog</td></tr><tr><td>21</td><td>ready</td><td>�</td><td>idle 31650s</td
><td>X042268�</td><td>95</td><td>/Application/ugsvols/bldata01/logs/imanscript14166.s
yslog</td></tr><tr><td>22</td><td>ready</td><td>�</td><td>idle 34610s</td><td>X044587
�</td><td>242</td><td>/Application/ugsvols/bldata01/logs/imanscript929.syslog</td></t
r><tr><td>23</td><td>ready</td><td>�</td><td>idle 80449s</td><td>�</td><td>1</td
><td>/Application/ugsvols/bldata01/logs/imanscript18783.syslog</td></tr><tr><td>24</td><td
>ready</td><td>�</td><td>idle 84051s</td><td>�</td><td>1</td><td>/Application/ug
svols/bldata01/logs/imanscript5679.syslog</td></tr></table>
<hr>
<H2>Queries</H2><p>No queries.</p>

<hr>
<h2>Recently deceased processes</h2><table border=1><tr><th>username</th><th>syslog</th></
tr>
<tr><td>90927�</td><td>/Application/ugsvols/bldata01/logs/imanscript28329.syslog</td>
</tr>
<tr><td>11920�</td><td>/Application/ugsvols/bldata01/logs/imanscript12775.syslog</td>
</tr>
<tr><td>83144�</td><td>/Application/ugsvols/bldata01/logs/imanscript16492.syslog</td>
</tr>
<tr><td>�</td><td>/Application/ugsvols/bldata01/logs/imanscript23739.syslog</td></tr>

<tr><td>11403�</td><td>/Application/ugsvols/bldata01/logs/imanscript10134.syslog</td>
</tr>
<tr><td>�</td><td>/Application/ugsvols/bldata01/logs/imanscript23248.syslog</td></tr>

<tr><td>�</td><td>/Application/ugsvols/bldata01/logs/imanscript23153.syslog</td></tr>

<tr><td>X033586�</td><td>/Application/ugsvols/bldata01/logs/imanscript1533.syslog</td
></tr>
<tr><td>X037095�</td><td>/Application/ugsvols/bldata01/logs/imanscript5629.syslog</td
></tr>
<tr><td>91011�</td><td>/Application/ugsvols/bldata01/logs/imanscript9653.syslog</td><
/tr>
</table>

$ awk --version | head -1
GNU Awk 3.1.5
$ awk '/idle/{sub(/s.*/,"",$2);if($2>20000)print "kill -9",$3}' \
> FS="idle |/logs/imanscript" RS=".syslog" file
kill -9 25488
kill -9 20999
kill -9 19396
kill -9 14646
kill -9 7582
kill -9 7183
kill -9 18706
kill -9 22502
kill -9 12580
kill -9 29761
kill -9 29658
kill -9 20039
kill -9 14166
kill -9 929
kill -9 18783
kill -9 5679

$ awk '/idle/{sub(/s.*/,"",$2);if($2>20000)print "Idle is:",$2,"PID is:",$3}' FS="idle |/
logs/imanscript" RS=".syslog" file
Idle is: 20340 PID is: 25488
Idle is: 27042 PID is: 20999
Idle is: 27504 PID is: 19396
Idle is: 29098 PID is: 14646
Idle is: 30198 PID is: 7582
Idle is: 31676 PID is: 7183
Idle is: 34199 PID is: 18706
Idle is: 31602 PID is: 22502
Idle is: 51645 PID is: 12580
Idle is: 30371 PID is: 29761
Idle is: 56147 PID is: 29658
Idle is: 30908 PID is: 20039
Idle is: 31650 PID is: 14166
Idle is: 34610 PID is: 929
Idle is: 80449 PID is: 18783
Idle is: 84051 PID is: 5679

$ awk '/idle/{sub(/s.*/,"",$2);if($2<20000)print "Idle is:",$2,"PID is:",$3}' FS="idle |/
logs/imanscript" RS=".syslog" file
Idle is: 46 PID is: 9994
Idle is: 937 PID is: 7599
Idle is: 469 PID is: 1963
Idle is: 7842 PID is: 16225
Idle is: 9989 PID is: 10210
Idle is: 13089 PID is: 561
Idle is: 18113 PID is: 16278
Idle is: 11560 PID is: 15120

I think i am not using gnu awk.

marabou $ awk --version
Usage: awk [-F fs][-v Assignment][-f Progfile|Program][Assignment|File] ...
marabou $

how do i install gnuawk. Mine is HP-UX

But is it possible in normal awk?

I tried the below command.

=> awk '/idle/{sub(/s.*/,"",$2);if($2>20000)print "Idle is:",$2,"PID is:",$3}' FS="idle |/logs/imanscript" RS=".syslog">
Idle is: 3186 PID is: 3568
Idle is: 3175 PID is: 896
Idle is: 2823 PID is: 29204
Idle is: 9082 PID is: 9994
Idle is: 7529 PID is: 7599
Idle is: 21113 PID is: 10210
Idle is: 24213 PID is: 561
Idle is: 29237 PID is: 16278
Idle is: 22684 PID is: 15120
Idle is: 31464 PID is: 25488
infodba-marabou:/tmp

The below is the process id's in that file.

1 ready idle 3278s 0 /Application/ugsvols/bldata01/logs/imanscript3568.syslog
2 ready idle 3267s X040187 3 /Application/ugsvols/bldata01/logs/imanscript896.syslog
3 ready idle 2915s X041587 33 /Application/ugsvols/bldata01/logs/imanscript29204.syslog
4 ready idle 9174s 106641 7 /Application/ugsvols/bldata01/logs/imanscript9994.syslog
5 ready idle 7621s X039706 194 /Application/ugsvols/bldata01/logs/imanscript7599.syslog
6 ready idle 11685s X036091 24 /Application/ugsvols/bldata01/logs/imanscript1963.syslog
7 ready idle 19058s X045672 7 /Application/ugsvols/bldata01/logs/imanscript16225.syslog
8 ready idle 21205s X035077 5 /Application/ugsvols/bldata01/logs/imanscript10210.syslog
9 ready idle 24305s X035466 5 /Application/ugsvols/bldata01/logs/imanscript561.syslog
10 ready idle 29329s 103818 5 /Application/ugsvols/bldata01/logs/imanscript16278.syslog
11 ready idle 22776s X039371 15 /Application/ugsvols/bldata01/logs/imanscript15120.syslog
12 ready idle 31556s 22320 4 /Application/ugsvols/bldata01/logs/imanscript25488.syslog

But when comparing the output is not proper. and also can we get the users in that because if the users column is nill we should kill that process also.

Try it like this:

$(awk '/idle/{sub(/s.*/,"",$2);if(($2+0)>20000)print "kill -9",$3}' \
FS="idle |/logs/imanscript" RS=".syslog" file)

thanks it works perfect. similar way i want to check whether the process is owned by the user. I want to kill those unowned process also.

according to that file you can see users column something like this X036091&nbsp

if there is no user we have to kill that process also. please let me know how to acheive that

awk '/idle/{sub(/s.*/,"",$2);if(($3~/^&/)||(($2+0)>20000))print "kill -9",$4}' \
FS="idle |s</td><td>|/logs/imanscript" RS=".syslog" file

Thanks for the commands. Could you please explain the above command.

Thank You.

As it is quite trivial,
could please tell me which part is not clear?

The above command not working.

=> awk '/idle/{sub(/s.*/,"",$2);if(($3~/^&/)||(($2+0)>20000))print "kill -9",$4}' \FS="idle |s</td><td>|/logs/imanscript"RS=
".syslog" proc.txt
kill -9 4628
infodba-marabou:/tmp

here is my list

=> awk '/idle/{sub(/s.*/,"",$2);print "Idle is:",$2,"PID is:",$3}' FS="idle |/logs/imanscript" RS=".syslog" proc.txt
Idle is: 4639 PID is: 3568
Idle is: 4628 PID is: 896
Idle is: 4276 PID is: 29204
Idle is: 10535 PID is: 9994
Idle is: 8982 PID is: 7599
Idle is: 13046 PID is: 1963
Idle is: 20419 PID is: 16225
Idle is: 630 PID is: 10210
Idle is: 25666 PID is: 561
Idle is: 30690 PID is: 16278
Idle is: 24137 PID is: 15120
Idle is: 32917 PID is: 25488

:mad: My AIX version of awk (not GNU) support only one character for RS variable : RS=".syslog" is treated as RS="."

Jean-Pierre.

Please explain me the below command

please explain the whole.. Thanks.

(awk '/idle/{sub(/s.*/,"",$2);if(($2+0)>20000)print "kill -9",$3}' \
FS="idle |/logs/imanscript" RS=".syslog" file)

and also please help me to find the unreferenced process ie; Process with no users owning.

thanks.

May be it's because of the html formating (with copy/paste from the forum ...).

On HP-UX:

$ cat file
Content-type: text/html

<H2>No query</H2>
infodba-marabou:/tmp
=> export QUERY_STRING="IMAN_server_report=full"
infodba-marabou:/tmp
=> $IMAN_ROOT/web/htdocs/cgi-bin/iman > /tmp/proc.txt
infodba-marabou:/tmp
=> cat proc.txt
Content-type: text/html

<HTML><META HTTP-EQUIV="REFRESH" CONTENT=10><HEAD><TITLE>TcEng Web server report</TITLE>
</HEAD><BODY>
<H1>TcEng Web server report</H1>
<p>Thu Feb 1 00:16:43 2007 - I am alive and well (pid 712), up since Sat Dec 16 22:26:32 2006</p>
<p>click <a href=/iman>here</a> to login to this server</p>
<p>click <a href="/cgi-bin/iman?IMAN_server_report">here</a> for a shortened report</p><p>click <a href="/cgi-bin/iman?IMAN_server_report=xml">here</a> for an xml report</p><p>Completed 47155 out of 47183 queries; averag
e runtime 2.252 secs (4 timeouts).</p>

<hr>
<H2>Preferences</H2><pre>
Port number: 8181
Select time: 18000
Heartbeat time: 1000
Query time limit: 18000
Maximum number of queries: 750
Minimum number of free processes: 1
Maximum number of processes: 500
Soft login timeout: 120
Hard login timeout: 36000
Process lifespan (in queries): 10000
Maximum login processes per user: 1
Maximum retries on blocked sockets (Windows only): 5
Maximum concurrent logins 500
Maximum CPU usage 80
CPU usage monitoring 0
CPU usage check interval 10
Maximum no of requests/user in queue 5
Maximum length of the queue of pending connections 128
Number of active file descriptors: 1760
Monitoring switch: 1
Internal buffer size: 16384
IMANScript program: /Application/ugs/tceng/tceng0912/web/bin/imanscript
IMAN Document Root: /Application/ugs/tceng/tceng0912/web/htdocs
IMAN Environment:

</pre>
<hr>
<H2>Processes</H2><table align=center width=100% border=1><tr><th>No.</th><th>State</th><th>Query</th><th>Time s</th><th>User</th><th>Processed</th><th>Syslog</th></tr><tr><td>1</td><td>ready</td><td>�</td><td>idle 46s</td><td>�</td><td>1</td><td>/Application/ugsvols/bldata01/logs/imanscript9994.syslog</td></tr><tr><td>2</td><td>ready</td><td>�</td><td>idle 937s</td><td>�</td><td>1</td><td>/Application/ugsvols/bldata01/logs/imanscript7599.syslog</td></tr><tr><td>3</td><td>ready</td><td>�</td><td>idle 469s</td><td>X036091�</td><td>24</td><td>/Application/ugsvols/bldata01/logs/imanscript1963.syslog</td></tr><tr><td>4</td><td>ready</td><td>�</td><td>idle 7842s</td><td>X045672�</td><td>7</td><td>/Application/ugsvols/bldata01/logs/imanscript16225.syslog</td></tr><tr><td>5</td><td>ready</td><td>�</td><td>idle 9989s</td><td>X035077 �</td><td>5</td><td>/Application/ugsvols/bldata01/logs/imanscript10210.syslog</td></tr><tr><td>6</td><td>ready</td><td>�</td><td>idle 13089s</td><td>X035466�</td><td>5</td><td>/Application/ugsvols/bldata01/logs/imanscript561.syslog</td></tr><tr><td>7</td><td>ready</td><td>�</td><td>idle 18113s</td><td>103818�</td><td>5</td><td>/Application/ugsvols/bldata01/logs/imanscript16278.syslog</td></tr><tr><td>8</td><td>ready</td><td>�</td><td>idle 11560s</td><td>X039371�</td><td>15</td><td>/Application/ugsvols/bldata01/logs/imanscript15120.syslog</td></tr><tr><td>9</td><td>ready</td><td>�</td><td>idle 20340s</td><td>22320�</td><td>4</td><td>/Application/ugsvols/bldata01/logs/imanscript25488.syslog</td></tr><tr><td>10</td><td>ready</td><td>�</td><td>idle 27042s</td><td>�</td><td>1</td><td>/Application/ugsvols/bldata01/logs/imanscript20999.syslog</td></tr><tr><td>11</td><td>ready</td><td>�</td><td>idle 27504s</td><td>101568�</td><td>13</td><td>/Application/ugsvols/bldata01/logs/imanscript19396.syslog</td></tr><tr><td>12</td><td>ready</td><td>�</td><td>idle 29098s</td><td>64920�</td><td>10</td><td>/Application/ugsvols/bldata01/logs/imanscript14646.syslog</td></tr><tr><td>13</td><td>ready</td><td>�</td><td>idle 30198s</td><td>X030111 �</td><td>3</td><td>/Application/ugsvols/bldata01/logs/imanscript7582.syslog</td></tr><tr><td>14</td><td>ready</td><td>�</td><td>idle 31676s</td><td>X041708�</td><td>42</td><td>/Application/ugsvols/bldata01/logs/imanscript7183.syslog</td></tr><tr><td>15</td><td>ready</td><td>�</td><td>idle 34199s</td><td>67733�</td><td>40</td><td>/Application/ugsvols/bldata01/logs/imanscript18706.syslog</td></tr><tr><td>16</td><td>ready</td><td>�</td><td>idle 31602s</td><td>79826�</td><td>14</td><td>/Application/ugsvols/bldata01/logs/imanscript22502.syslog</td></tr><tr><td>17</td><td>ready</td><td>�</td><td>idle 51645s</td><td>�</td><td>1</td><td>/Application/ugsvols/bldata01/logs/imanscript12580.syslog</td></tr><tr><td>18</td><td>ready</td><td>�</td><td>idle 30371s</td><td>11421�</td><td>34</td><td>/Application/ugsvols/bldata01/logs/imanscript29761.syslog</td></tr><tr><td>19</td><td>ready</td><td>�</td><td>idle 56147s</td><td>�</td><td>1</td><td>/Application/ugsvols/bldata01/logs/imanscript29658.syslog</td></tr><tr><td>20</td><td>ready</td><td>�</td><td>idle 30908s</td><td>X035887�</td><td>74</td><td>/Application/ugsvols/bldata01/logs/imanscript20039.syslog</td></tr><tr><td>21</td><td>ready</td><td>�</td><td>idle 31650s</td><td>X042268�</td><td>95</td><td>/Application/ugsvols/bldata01/logs/imanscript14166.syslog</td></tr><tr><td>22</td><td>ready</td><td>�</td><td>idle 34610s</td><td>X044587�</td><td>242</td><td>/Application/ugsvols/bldata01/logs/imanscript929.syslog</td></tr><tr><td>23</td><td>ready</td><td>�</td><td>idle 80449s</td><td>�</td><td>1</td><td>/Application/ugsvols/bldata01/logs/imanscript18783.syslog</td></tr><tr><td>24</td><td>ready</td><td>�</td><td>idle 84051s</td><td>�</td><td>1</td><td>/Application/ugsvols/bldata01/logs/imanscript5679.syslog</td></tr></table>
<hr>
<H2>Queries</H2><p>No queries.</p>

<hr>
<h2>Recently deceased processes</h2><table border=1><tr><th>username</th><th>syslog</th></tr>
<tr><td>90927�</td><td>/Application/ugsvols/bldata01/logs/imanscript28329.syslog</td></tr>
<tr><td>11920�</td><td>/Application/ugsvols/bldata01/logs/imanscript12775.syslog</td></tr>
<tr><td>83144�</td><td>/Application/ugsvols/bldata01/logs/imanscript16492.syslog</td></tr>
<tr><td>�</td><td>/Application/ugsvols/bldata01/logs/imanscript23739.syslog</td></tr>
<tr><td>11403�</td><td>/Application/ugsvols/bldata01/logs/imanscript10134.syslog</td></tr>
<tr><td>�</td><td>/Application/ugsvols/bldata01/logs/imanscript23248.syslog</td></tr>
<tr><td>�</td><td>/Application/ugsvols/bldata01/logs/imanscript23153.syslog</td></tr>
<tr><td>X033586�</td><td>/Application/ugsvols/bldata01/logs/imanscript1533.syslog</td></tr>
<tr><td>X037095�</td><td>/Application/ugsvols/bldata01/logs/imanscript5629.syslog</td></tr>
<tr><td>91011�</td><td>/Application/ugsvols/bldata01/logs/imanscript9653.syslog</td></tr>
</table>

$ type awk
awk is /usr/bin/awk
$ what /usr/bin/awk
/usr/bin/awk:
         main.c $Date: 2004/12/05 21:30:07 $Revision: r11.11/2 PATCH_11.11 (PHCO_29952)
         tran.c $Date: 2004/12/05 21:30:07 $Revision: r11.11/3 PATCH_11.11 (PHCO_29952)
         lib.c $Date: 2002/09/03 22:10:33 $Revision: r11.11/1 PATCH_11.11 (PHCO_27559)
         run.c $Date: 2004/12/05 21:30:07 $Revision: r11.11/4 PATCH_11.11 (PHCO_29952)
         $Revision: @(#) awk  R11.11_BL2004_1205_4 PATCH_11.11 PHCO_29952 

$ awk '/idle/{sub(/s.*/,"",$2);sub(/<\/td>.*/,"",$3); proc=$3; \
> if(($3~/^&/)||(($2+0)>20000))print "Idle is:",$2, "Process is:", proc , "PID is:", $4}' \
> FS="idle |s</td><td>|/logs/imanscript" RS=".syslog" file
Idle is: 46 Process is: � PID is: 9994
Idle is: 937 Process is: � PID is: 7599
Idle is: 20340 Process is: 22320� PID is: 25488
Idle is: 27042 Process is: � PID is: 20999
Idle is: 27504 Process is: 101568� PID is: 19396
Idle is: 29098 Process is: 64920� PID is: 14646
Idle is: 30198 Process is: X030111 � PID is: 7582
Idle is: 31676 Process is: X041708� PID is: 7183
Idle is: 34199 Process is: 67733� PID is: 18706
Idle is: 31602 Process is: 79826� PID is: 22502
Idle is: 51645 Process is: � PID is: 12580
Idle is: 30371 Process is: 11421� PID is: 29761
Idle is: 56147 Process is: � PID is: 29658
Idle is: 30908 Process is: X035887� PID is: 20039
Idle is: 31650 Process is: X042268� PID is: 14166
Idle is: 34610 Process is: X044587� PID is: 929
Idle is: 80449 Process is: � PID is: 18783
Idle is: 84051 Process is: � PID is: 5679

For me the process table is in one line!

Anway,
if you understand the concepts (FS and RS),
you'll be able to adjust it for your needs.

Can you please explain me this FS and RS please

yeah thats right..Itz giving me wrong process id's

crypto $ awk '/idle/{sub(/s.*/,"",$2);sub(/<\/td>.*/,"",$3); proc=$3;if(($3~/^&/)||(($2+0)>20000))print "Idle is:",$2, "Process is:"
, proc , "PID is:", $4}' \FS="idle |s</td><td>|/logs/imanscript" RS=".syslog" proc.txt
Idle is: 4639 Process is: � PID is: 3568
Idle is: 20419 Process is: X045672� PID is: 16225
Idle is: 25666 Process is: X035466� PID is: 561
Idle is: 30690 Process is: 103818� PID is: 16278
Idle is: 24137 Process is: X039371� PID is: 15120
Idle is: 32917 Process is: 22320� PID is: 25488

actually 3568 is a owned process.. here is the column for your reference.

</pre>
<hr>
<H2>Processes</H2><table align=center width=100% border=1><tr><th>No.</th><th>State</th><th>Query</th><th>Times</th><th>User</th><th
>Processed</th><th>Syslog</th></tr><tr><td>1</td><td>ready</td><td>�</td><td>idle 4639s</td><td>�</td><td>0</td><td>/Appli
cation/ugsvols/bldata01/logs/imanscript3568.syslog</td></tr><tr><td>2</td><td>ready</td><td>�</td><td>idle 4628s</td><td>X04018
7�</td><td>3</td><td>/Application/ugsvols/bldata01/logs/imanscript896.syslog</td></tr><tr><td>3</td><td>ready</td><td>�</t
d><td>idle 4276s</td><td>X041587�</td><td>33</td><td>/Application/ugsvols/bldata01/logs/imanscript29204.syslog</td></tr><tr><td
>4</td><td>ready</td><td>�</td><td>idle 10535s</td><td>106641�</td><td>7</td><td>/Application/ugsvols/bldata01/logs/imansc
ript9994.syslog</td></tr><tr><td>5</td><td>ready</td><td>�</td><td>idle 8982s</td><td>X039706�</td><td>194</td><td>/Applic
ation/ugsvols/bldata01/logs/imanscript7599.syslog</td></tr><tr><td>6</td><td>ready</td><td>�</td><td>idle 13046s</td><td>X03609
1�</td><td>24</td><td>/Application/ugsvols/bldata01/logs/imanscript1963.syslog</td></tr><tr><td>7</td><td>ready</td><td>�<
/td><td>idle 20419s</td><td>X045672�</td><td>7</td><td>/Application/ugsvols/bldata01/logs/imanscript16225.syslog</td></tr><tr><
td>8</td><td>ready</td><td>�</td><td>idle 630s</td><td>X035077�</td><td>9</td><td>/Application/ugsvols/bldata01/logs/imans
cript10210.syslog</td></tr><tr><td>9</td><td>ready</td><td>�</td><td>idle 25666s</td><td>X035466�</td><td>5</td><td>/Appli
cation/ugsvols/bldata01/logs/imanscript561.syslog</td></tr><tr><td>10</td><td>ready</td><td>�</td><td>idle 30690s</td><td>10381
8�</td><td>5</td><td>/Application/ugsvols/bldata01/logs/imanscript16278.syslog</td></tr><tr><td>11</td><td>ready</td><td>�
</td><td>idle 24137s</td><td>X039371�</td><td>15</td><td>/Application/ugsvols/bldata01/logs/imanscript15120.syslog</td></tr><tr
><td>12</td><td>ready</td><td>�</td><td>idle 32917s</td><td>22320�</td><td>4</td><td>/Application/ugsvols/bldata01/logs/im
anscript25488.syslog</td></tr></table>
<hr>
<H2>Queries</H2><p>No queries.</p>

FS is input field separator, RS is input record separator.
Read the man pages for awk.

Thank You Buddy. It works great.

radoulov

One final question. Could you please explain me this.I really couldn't understand much.

awk '/idle/{sub(/s.*/,"",$2);sub(/<\/td>.*/,"",$3); proc=$3;if(($3~/^&/)||(($2+0)>20000))

Thanks.

I'll try (feel free to correct my english) ...

awk '
# For every record matching the pattern "idle":
# + in the second field ($2) remove (replace with "") everything
# + after and including the regex "s.*" (letter "s" followed by 
# + any number of any character), in the 3rd field ($3), 
# + remove (replace with "") everything after and including 
# + the regex "<\/td>.*" (</td>, forward slash needs to be escaped,
# + followed by any number of any character); then assign the _modified_
# + value of $3 to the variable proc.
# If the value of the variable proc matches the regex "^&" (& character 
# + at the beginig) _OR_ the value of the second filed (for some awk
# + implementations you need some sort of explicit casting/conversion,  
# + in this case to number with a "fake" addition ($2+0)) is greater than
# + 20000, perform some actions ....
/idle/{sub(/s.*/,"",$2);sub(/<\/td>.*/,"",$3); proc=$3;if(($3~/^&/)||(($2+0)>20000))
....