parallel is passing the string "-d -m -S t1 bash -c 'echo hi 2>&1 | tee hi.txt'"
as a single argument to screen
. So the argument is not getting split into words, and it looks like a really long option starting with -d
, which screen can't understand.
I think you want to do something like this, although I haven't tested it or anything:
parallel --gnu "screen -d -m -S t1 bash -c 'echo {} 2>&1 | tee {}.txt'" ::: hi bye