Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

GNU parallel not working at all

I have been trying to use GNU parallel for some time, but I have never been able to get it to function at all!

For example, running (in a non-empty directory!):

ls | parallel echo            # Outputs single new line ls | parallel echo echo echo  # Outputs three new lines. ls | parallel echo {}         # /bin/bash: {}: command not found ls | parallel echo '{}'       # /bin/bash: {}: command not found ls | parallel 'echo {}'       # Outputs: {} ls | parallel -IMM 'echo MM'  # Outputs: MM 

It seems that it is simply executing each argument as a command, which makes no sense.

I have tried bash, zsh, tcsh, csh, and sh, to no avail.

like image 405
WaelJ Avatar asked May 08 '13 19:05

WaelJ


1 Answers

As I was about to complete writing this question, I ran parallel --version to report the version, only to find:

WARNING: YOU ARE USING --tollef. IF THINGS ARE ACTING WEIRD USE --gnu.

It is not clear to me why that flag is set by default. Needless to say, using --gnu worked!

Thought I would post this to save someone hours of frustration and confusion.

EDIT: To fix this permanently (in Ubuntu at least), delete the --tollef flag in /etc/parallel/config

like image 76
WaelJ Avatar answered Oct 19 '22 10:10

WaelJ