foreach my $listDevices ($device_list->result()) { ... open OVERWRITE, ">overwrite.txt" or die $! ... close OVERWRITE; ... }

Do you see what is happening?

You have even called the filehandle "OVERWRITE".

The file gets overwritten every time the loop and if directive come by the call to open

Solution: place both the open and close outside of the foreach loop.

open goes first, then the loop, and when that's done, close the filehandle.

Cheers, Sören

(hooked on the Perl Programming language)


In reply to Re: Perl prints only one line when directed to a file but print to a screen works by Happy-the-monk
in thread Perl prints only one line when directed to a file but print to a screen works by vlad3848

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • 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:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.