On Tuesday 23 March 2004 11:18 am, Rob Torres wrote:
> Hello,
> I am writing a simple perl script to count the # of characters in a given
> field.  At the command line I can write >>wc -m somefile.txt, and get the
> total character count.  But in the script I am splitting a text file and
> then doing a count on an element of the array.
>
> code snippet:
> **************************
> while (<FILE>)
> {
>     chomp;
>     (@fields) = split(/\t/);
>     $count = wc -m $fields[12];
>     print "$count\n";
> }
> **************************
>
> Here is the error I receive when I check the syntax.
>
> >perl -c count.pl
>
> Unrecognized file test: -m at count.pl line 20.
>
>
> I've tried many different ways of writing this, but can't seem to get it
> working.  Any ideas/help?
> Thanks,
> Rob

Rob -

You're mixing Xs and Os. 'wc' is an external program that must be
run under a 'shell' (bash, sh, etc.) - NOT perl. Although you can
execucte external commands within perl ( via 'system' or '`...`', this
script should use perl internal functions like:

 **************************

 use strict; # get in this habit
 use warnings;

 while (<FILE>)
 {
     chomp;
     my @fields = split(/\t/);
     my $count = 0;
     for my $field( @fields ) {
       $count += length $field;
     }
     print "$count\n";
 }
 **************************

Aloha => Beau;



-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>


Reply via email to