bug-parallel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GNU Parallel Bug Reports Running parallel from perl system() with re


From: Josef wells
Subject: Re: GNU Parallel Bug Reports Running parallel from perl system() with redirects
Date: Tue, 13 Jan 2015 21:47:39 +0000

Ok, so sorry, the command should be:
perl -e "system('parallel --joblog - ::: \'echo hello >& hello_log\' > joblog 2>&1');"

I bisected the releases and found the release that changes this is 20140822.

The problem is the shell that perl is using to do system().

I fixed it by being explicit to use bash.

perl -e "system('/bin/bash -c \"parallel --joblog - ::: \'echo hello >& hello_log\' > joblog 2>&1\"');"

I think what parallel is doing is correct, but I do hate that PERL uses /bin/sh and doesn't make this such a quote-mess.

parallel is great
all hail parallel

-Josef


On Tue Jan 13 2015 at 12:40:55 AM Josef wells <address@hidden> wrote:
I have a problem that did not happen with version:
GNU parallel 20130822
But does happen with:
GNU parallel 20141122

This works:
parallel --joblog - ::: 'cat hello >& hello_log' > joblog 2>&1

But it doesn't work from inside a perl program.
perl -e "system('parallel --joblog - ::: \'cat hello >& hello_log\' > joblog 2>&1');"
joblog contains the error:
/bin/sh: 1: Syntax error: Bad fd number

You can take out the --joblog -, as that just makes something useful go to the parallel output redirect.

I posted this to the main parallel list, but I didn't see it show up, so maybe I don't understand how to internet.

-Josef

reply via email to

[Prev in Thread] Current Thread [Next in Thread]