Do you get an error message? If so, why don't you post it?
so what's the problem?
The problem is that you are getting things mixed up. So several problems:
- You loop foreach (@ARGV) and use $ARGV instead of $_ in the inner loop.
- You assign to $out[$i], then increment $i, then access $out[$i] - which is undefined. Bummer. You need not stuff the filehandle into @out, since you are only using one output filehandle each time through. Use a lexical filehandle e.g. my $outfh = IO::File->new(...)
- You are missing a $ in the expression ">file_names[$i]" - that should be ">$file_names[$i]". Same in the subsequent argument to <c>die.</c>
Having fixed that:
while (<>){
This loop reads all files on the commandline line by line, file after file and executes the code enclosed in the loop body, for every line from all files.
Inside the while loop, you iterate over all files again with the foreach(ARGV) inner loop, opening and reading them. You open, read, write all files over and over as many times as all the files have lines, always incrementing $i which gets you quickly past the end of @file_names.
Drop the outer while (<>) loop.
update: But why am I writing you, at all? You didn't give a damn at Re: reading files to different output files., so what...
perl -le'print map{pack c,($-++?1:13)+ord}split//,ESEL'
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.