|
Posted by kwalike57 on January 2, 2008, 4:48 pm
Please log in for more thread options > >I need to use Perl to read through log output from a df -k command on
> >a Unix server, for each line in the log where the value for %Used is
> >greater than 60% I need to write that line of the log out to another
> >text file. =A0The header %Used is located on the line above the actual
> >value, like this:
>
> >%Used
> >60%
>
> Where's the problem? Loop through the file using a standard while(){}.
> When you find a line with a content that is eq()ual to '%Used' then read t=
he
> next line and check if the value is > 60.
>
> >How would I capture and evaluate only the %Used value and no other
> >values in that line?
>
> That depends on what that line actually contains.
> Standard answer: if you know the separator between values, then use split(=
),
> if you know the value then use m/(...)/.
>
> It is impossible to give more detailed suggestions without seeing the actu=
al
> data.
>
> >The 60% occurs first in the value line followed by a percent value for
> >inodes used.
>
> That is nice, but a vague verbal description of the data can only result i=
n
> a vague verbal description of the algorithm.
>
> jue
Hello.
Thanks for the note.
Here is additional information:
Sample file excerpt...
Filesystem 1024-blocks Free %Used Iused %Iused Mounted on
/dev/hd4 131072 38912 71% 4261 32% /
Filesystem 1024-blocks Free %Used Iused %Iused Mounted on
/dev/inputlv 255328256 118925432 54% 564 1% /IPW/input
=46rom this example, I want to evaluate the column labeled %Used for
values greater than 60% and if that value is greater than 60%, I then
want to write that entire line, (/dev/hd4 131072 38912
71% 4261 32% /
) out to a text file that will be emailed out to report on filesystems
that are now at a capacity of 60% or greater.
I already have the script written to create the original df -k output
to a text file and create the email generation. I just need to have
help evaluating the correct values in the original df -k output file
and then creating the new file containing entries of all filesystems
that are at or above 60% capacity.
Does this help clarify my question?
Thanks again,
Karin Walike
|