On Mon, May 14, 2018 at 2:39 AM, Ryan Brothers <[email protected]> wrote:
> I have a few questions on parallel I was hoping you could help with relating > to running the same command on multiple servers. I'm running version > 20180422. > > 1) When I run: > > parallel --results test.csv echo ::: a b c > > I get an error: > > Can't use an undefined value as a symbol reference at /usr/bin/parallel line > 8906. > > Is that the correct way to run it to have output into a csv file? You found a bug. Fixed in 20180522. > 2) When I run: > > parallel --results a --nonall -S $SERVER1,$SERVER2 echo a b c > > I noticed that a results directory does not get created. Should it be > created in this case? Currently --results is incompatible with --nonall. Would the expected output be something like: a/server/$SERVER1/1/a/[...files...] a/server/$SERVER2/1/a/[...files...] a/server/$SERVER1/1/b/[...files...] a/server/$SERVER2/1/b/[...files...] a/server/$SERVER1/1/c/[...files...] a/server/$SERVER2/1/c/[...files...] > 3) Similarly, this doesn't output anything to the screen: > > parallel --results -.csv --nonall -S $SERVER1,$SERVER2 echo a b c This is also not implemented, but I can envision what this should look like: Basically the same output as --joblog - but with the value columns added. As --nonall/--onall is somewhat of a hack, it might not be easy to get working, though. > 4) What I'm really trying to get at with these questions is I'm currently > using parallel-ssh (https://code.google.com/archive/p/parallel-ssh), but not > sure if it's still being maintained. With pssh, I can run the same command > on many servers and get back the results of running each command on each > server - as an example, I may want to run "yum update" on a bunch of > servers. Try: parallel --tag --joblog my.log --nonall -S $SERVER1,$SERVER2 echo a b c cat my.log > Is it possible to have the output from parallel be similar to the output > that pssh provides? pssh displays each server you ran the command on with a > success/failure indicator, and then it also logs all output into files, > naming each file with the server name. Currently that is not possible. But it is not a bad idea. /Ole
