<HTML>
<HEAD>
<TITLE>xlsgrep.pl - Grep spreadsheet files in the current directory and any subdirectories.</TITLE>
<LINK REV="made" HREF="mailto:">
</HEAD>
<BODY>
<A NAME="__index__"></A>
<!-- INDEX BEGIN -->
<UL>
<LI><A HREF="#name">NAME</A></LI>
<LI><A HREF="#synopsis">SYNOPSIS</A></LI>
<LI><A HREF="#description">DESCRIPTION</A></LI>
<LI><A HREF="#see also">SEE ALSO</A></LI>
<LI><A HREF="#author">AUTHOR</A></LI>
<LI><A HREF="#license">LICENSE</A></LI>
<LI><A HREF="#cvs id">CVS ID</A></LI>
<LI><A HREF="#cvs log">CVS LOG</A></LI>
</UL>
<!-- INDEX END -->
<HR>
<P>
<H1><A NAME="name">NAME</A></H1>
<P>xlsgrep.pl - Grep spreadsheet files in the current directory and any subdirectories.</P>
<P>
<HR>
<H1><A NAME="synopsis">SYNOPSIS</A></H1>
<P>xlsgrep.pl some_regex_pattern</P>
<P>
<HR>
<H1><A NAME="description">DESCRIPTION</A></H1>
<P>xlsgrep utilises the power of perls regular expressions to search every cell, on
every sheet in any spreadsheets files found in the current directory or subdirectories.</P>
<P>There are currently no switches supports. Some of the standard grep switches can be
handled using perls regular expression syntax. The equivalent of the ignore case grep
switch (-i) can be applied to <EM>pattern</EM> by prefixing with <STRONG>(?i)</STRONG> to give <EM>(?i)pattern</EM></P>
<P>The name of each spreadsheet checked is printed followed by any matches. The following is
a typical run output</P>
<PRE>
C:> perl xlsgrep.pl 7:45
Checking ITTS-GNG-040830.xls
./ITTS-GNG-040830.xls : Sheet=Sheet1, Row=12, Col=2, Value=7:45
Checking ITTS-GNG-040906.xls
Checking ITTS-GNG-040920.xls</PRE>
<P>Here all spreadsheets in the current and sub directories were searched for the string '7:45'
which was found in the spreadsheet 'ITTS-GNG-040830.xls'.</P>
<P>
<HR>
<H1><A NAME="see also">SEE ALSO</A></H1>
<P>perlre, perlrequick and perlretut man pages for regualar expression details.</P>
<P>Spreadsheet::BasicRead and Spreadsheet:ParseExcel on CPAN</P>
<P>
<HR>
<H1><A NAME="author">AUTHOR</A></H1>
<PRE>
Greg George, IT Technology Solutions P/L, Australia
Mobile: +61-404-892-159, Email: gng@cpan.org</PRE>
<P>
<HR>
<H1><A NAME="license">LICENSE</A></H1>
<P>Copyright (c) 1999- Greg George. All rights reserved. This
program is free software; you can redistribute it and/or modify it under
the same terms as Perl itself.</P>
<P>
<HR>
<H1><A NAME="cvs id">CVS ID</A></H1>
<P>$Id: xlsgrep.pl,v 1.4 2004/10/08 22:35:20 Greg Exp $</P>
<P>
<HR>
<H1><A NAME="cvs log">CVS LOG</A></H1>
<PRE>
$Log: xlsgrep.pl,v $
Revision 1.4 2004/10/08 22:35:20 Greg
- Wrap the open of each spreadsheet in an eval to trap the die
- Add printing the name of each spreadsheet checked
- Correct the printing of the column number
- Added sample run output to POD</PRE>
<PRE>
Revision 1.3 2004/10/03 04:58:20 Greg
- Test of open of spreadsheet and return if failure</PRE>
<PRE>
Revision 1.2 2004/10/01 10:59:30 Greg
- Replaced the die with print to STDERR when you can't open a spreadsheet</PRE>
<PRE>
Revision 1.1 2004/09/30 12:31:26 Greg
- Initial development</PRE>
</BODY>
</HTML>