Thanks guys for the quick replies. And apologies for making it too general. Here is the code:
require Win32; Win32->import; my $patharg = $ARGV[0]; print "ARGV: [$patharg]\n"; $path = "\"" . Win32::GetShortPathName($patharg) . "\""; print "patharg: [$patharg]\n"; print "path: [$path]\n"; my $cmd = "$path\\disc"; print "Issuing cmd: [$cmd]\n"; my $op = `$cmd`; my $ret = $?; print "ret: [$ret], op: [$op]\n"; $cmd = "$path\\disc -v"; print "Issuing cmd: [$cmd]\n"; $op = `$cmd`; $ret = $?; print "ret: [$ret], op: [$op]\n" ####################
Output:
C:\Users\Administrator.ZEN>perl test.pl "C:\Program Files\GFN%$^#\CLI\ +bin" ARGV: [C:\Program Files\GFN%$^#\CLI\bin] patharg: [C:\Program Files\GFN%$^#\CLI\bin] path: ["C:\PROGRA~1\GFN%$^#\CLI\bin"] Issuing cmd: ["C:\PROGRA~1\GFN%$^#\CLI\bin"\disc] The system cannot find the path specified. ret: [256], op: [] Issuing cmd: ["C:\PROGRA~1\GFN%$^#\CLI\bin"\disc -v] ret: [0], op: [ Discovery Version: 7.2.10.0 <snip> ]
If I maually run the command without any args, it runs fine:
C:\Users\Administrator.ZEN>"C:\Program Files\GFN%$^#\CLI\bin"\disc Discovery Version: 7.2.10.0
I have to qualify the script with paths containing such special characters.

In reply to Re: perl windows backtick problem by Anonymous Monk
in thread perl windows backtick problem by Anonymous Monk

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.