What do you think the path is? Do you still think after being told twice that the / is necessary? If you must cargo cult then say -I./ instead of -I..
On Sun, Jun 3, 2018 at 6:24 PM ToddAndMargo <toddandma...@zoho.com> wrote: > >> On Sun, Jun 3, 2018 at 6:06 PM ToddAndMargo <toddandma...@zoho.com > >> <mailto:toddandma...@zoho.com>> wrote: > >> > >> On 06/03/2018 02:54 PM, Brad Gilbert wrote: > >> > You can use q[./] instead of \'./\' > >> > (especially useful so that it will work on both Windows and Unix > >> > > >> > But in this case it is even better to use -I and -M > >> > > >> > p6 -I. -MRunNoShell -e '( my $a, my $b ) = > >> > RunNoShell::RunNoShell("ls *.pm6"); say $a;' > >> > > >> > On Sun, Jun 3, 2018 at 4:47 PM, ToddAndMargo > >> <toddandma...@zoho.com <mailto:toddandma...@zoho.com>> wrote: > >> >>>> On Sun, Jun 3, 2018 at 5:28 PM ToddAndMargo > >> <toddandma...@zoho.com <mailto:toddandma...@zoho.com> > >> >>>> <mailto:toddandma...@zoho.com <mailto:toddandma...@zoho.com > >>> > >> wrote: > >> >>>> > >> >>>> Hi All, > >> >>>> > >> >>>> What am I doing wrong here? > >> >>>> > >> >>>> > >> >>>> $ p6 'lib \'./\'; use RunNoShell; ( my $a, my $b > ) = > >> >>>> RunNoShell::RunNoShell("ls *.pm6"); say $a;' > >> >>>> > >> >>>> bash: syntax error near unexpected token `=' > >> >>>> > >> >>>> Huh ??? > >> >>>> > >> >>>> > >> >>>> This is RunNoShell.pm6 > >> >>>> > >> >>>> sub RunNoShell ( $RunString ) is export { > >> >>>> ... > >> >>>> return ( $ReturnStr, $RtnCode ); > >> >>>> } > >> >>>> > >> >>>> Many thanks, > >> >>>> -T > >> >> > >> >> > >> >> On 06/03/2018 02:36 PM, Brandon Allbery wrote: > >> >>> > >> >>> bash doesn't like nested single quotes, even with escapes. So > >> the first \' > >> >>> gave you a literal backslash and ended the quoted part, then > >> the second \' > >> >>> gave you a literal ' and continued without quoting. The final ' > >> would then > >> >>> open a new quoted string, but bash doesn't get that far because > >> it sees the > >> >>> (now unquoted) parentheses and tries to parse them as a command > >> expansion. > >> >>> > >> >>> allbery@pyanfar ~/Downloads $ echo 'x\'y\'z' > >> >>> > ^C > >> >>> > >> >>> Note that it thinks it's still in a quoted string and wants me > to > >> >>> continue. > >> >>> > >> >> > >> >> p6 does not like `lib ./`, meaning use the current directory > >> >> without the single quotes. Any work around? > >> > >> It needs the path, which is ./ > >> > >> $ perl6 -I -MRunNoShell '( my $a, my $b ) = > RunNoShell::RunNoShell("ls > >> \*.pm6"); say $a;' > >> > >> Could not open ( my $a, my $b ) = RunNoShell::RunNoShell("ls > \*.pm6"); > >> say $a;. Failed to stat file: no such file or directory > > On 06/03/2018 03:09 PM, Brandon Allbery wrote: > > No, the path is just '.'. The trailing '/' does nothing. (Actually, it > > will be handled as './.' which is also the same as just '.'.) > > > > Trailing slash somehow being required for directories is a bit of shell > > cargo culting. > > > > So how would I put the path into `-I. -M`? > -- brandon s allbery kf8nh sine nomine associates allber...@gmail.com ballb...@sinenomine.net unix, openafs, kerberos, infrastructure, xmonad http://sinenomine.net