Thanks Ole. So right now it is not a built in feature. And thanks for the
workaround solution, it does its job for me right now.


On Tue, Mar 22, 2016 at 1:47 AM, Ole Tange <[email protected]> wrote:

> On Mon, Mar 21, 2016 at 4:37 PM, Ali Roustaei <[email protected]>
> wrote:
> > Hello,
> >
> > My script (say myscript) has three input parameters H, Re and Bn. Re and
> Bn
> > are tied so that for each Re input there is only a specific Bn.
> >
> > I want parallel to run all combinations of H with Bn,Re and not generate
> > combinations between Re and Bn. In terms of gnu parallel I want -xapply
> for
> > Re, Bn and usual combination for H with them.
> >
> > For example the below shows what I would like parallel to run. Imagine
> the
> > inputs:
> >
> > H inputs: A B
> > Re inputs: C D E
> > Bn inputs: F G H
> > (So  C corresponds to F, D to G and E to H)
> >
> > myscript A C F
> > myscript A D G
> > myscript A E H
> >
> > myscript B C F
> > myscript B D G
> > myscript B E H
>
> Currently this is not possible using a single command, but I have had
> this problem, too, so I would welcome a patch that made it possible.
>
> My suggestion for syntax would be to introduce a modifier on the
> argument separator. Something like +:
>
>   parallel myscript ::: A B ::: C D E :::+ F G H
>
> And if the input source is a file:
>
>   parallel myscript ::: A B ::: C D E ::::+ fgh-file
>
> The idea being that :::+ links the following input source to the
> previous --xapply style.
>
> Normal --xapply would then be possible to do like this:
>
>   parallel myscript ::: C D E :::+ F G H
>
> For your current situation this may work:
>
>   parallel --xapply -I ,, --arg-sep ,,, parallel eval echo myscript {}
> ,, ::: A B ,,, C D E ,,, F G H
>
> /Ole
>

Reply via email to