It suddenly occurred to me that I did a very stupid mistake in my test (although I perfectly knew this had to be part of my test, I just forgot to do it when I ran the test).

I forgot to change the shell script privileges. So, after realizing this error, I changed the hello.sh script to 755, and I now get the expected output:

$ perl -e '$command = "./hello.sh"; $out = `$command`; print $out, "\n +";' hello world!
So, it does work. My error was really silly, because my very first reaction when I read the OP was that, probably, either the shebang line was missing or not correct in the shell script, or the shell script file permissions were not set correctly. And then, I made the test with only one of the two things fixed, not the other. Sorry about that. But, on the other hand, the good news is that it might very well explain the OP's original problem and give her/him a way to solve it.

To the OP: files permissions may or may not be the source of the problem, try to chmod your shell script to execute rights (755 might be a good parameter), and try again.


In reply to Re^5: run in-program shell script under windows using cygwin by Laurent_R
in thread run in-program shell script under windows using cygwin by sandy105

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.