If the program returned 5 lines the first time, and only 2 the next, won't there be lines left over from the first time? How can I tell how many _additional_ lines I got back?
This rather depends on how you have things scoped. If the backticks are in a subroutine that gets called multiple times, each invocation of the routine will get a new array if the backticks line is coded as:
my @lines = `findgsc ...`;
If you move the declaration of @lines higher in the script, and then do
@lines = `findgsc ...`;
multiple times, each one overwrites @lines with new values. To get a delta on line count (i.e., note additional lines), merely save the prior count. Conceptually,
@lines = `finedgsc ...`;
$prevLines = scalar @lines;
@lines = `findgsc ...`;
if ( scalar @lines > $prevLines ) {
# we got more this time
}
Note that scalar @lines is the absolute line count, while $#lines is the final index in the array, which will be one less than the absolute count. Which to use is a matter of style, but don't confuse the two.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|