you put the regex in a seperate file then system calls it at once. that looks no much difference than directly calling it in the same perl script though.

The difference is that in my version, the command line passed to system() contains only things that are created by the script itself -- including the name of a file that stores a temporary perl script to be run -- so the shell launched by system() won't do anything unexpected. In your version, where the content of the temp. perl script is included in the command line, unexpected things in the script (e.g. shell metacharacters that were not properly escaped) could cause the system() call to do things that you don't want.

There might be a problem with the temp. perl script, and in my version, the perl job in the subshell would just exit with an error condition. In your version, the problem might be that some characters in the temp script are being interpreted by the shell.

Another way around this is to use a multi-arg system() call.


In reply to Re^3: Solaris - change hostname / ip / default-router-ip script by graff
in thread Solaris - change hostname / ip / default-router-ip script by Qiang

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.