You are seeing the verbose messages from the unzip process in your web page because unzip is sending them to stdout, which is inherited from the caller's stdout. Stdout for a CGI script is the web page being generated, so if a CGI script starts a child process that emits output to stdout, that output will end up in the generated web page.

As wind and cdarke suggested, you should use a perl module to unzip the archive, or if you can't redirect the output from the unzip process to /dev/null. You could also capture the output with a piped open and either parse or discard it

Also, where does this zip archive come from? If it is uploaded by an untrusted user then have you considered the possibility of a Zip bomb?


In reply to Re: Invoke system("unzip") in CGI file,unexpected output by chrestomanci
in thread Invoke system("unzip") in CGI file,unexpected output by marscld

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.