im using this script
[test@sys-master ~]$ parallel -k -j 100 sshpass -p test1213'!' ssh -oStrictHostKeyChecking=no -oCheckHostIP=no -q [email protected].{} "cat /proc/loadavg | awk -F \" \" '{ print a,\$1,b }' a="'"$(hostname)"'" b=\$(nproc)" ::: {41..46}.{1..100}
why return back local value? i need remote(node) values
sys-master 9.87 24 sys-master 9.99 24 sys-master 11.85 24 sys-master 11.67 24 sys-master 10.75 24 sys-master 8.00 24 sys-master 10.27 24 sys-master 11.94 24 sys-master 10.28 24 sys-master 10.94 24 sys-master 12.02 24 sys-master 9.55 24 sys-master 11.43 2
cat
on the remote server, the rest can be done locally. Things like this are also easily done using Ansible. Also, you have a typo (a missing backslash in front of$(hostname)
).parallel -k -j 100 sshpass -p test1213\! ssh -oStrictHostKeyChecking=no -oCheckHostIP=no -q [email protected].{} "</proc/loadavg awk -v hostName='$(hostname)' -v nProc='$(nproc)' '{ print hostName, \$1, nProc }'" ::: {41..46}.{1..100}
, I'm not posting this as an answer since I'm not sure it there is any other issues withparallel
commnad syntax (because I never used it).cat /proc/loadavg | awk 'foo'
=awk 'foo' /proc/loadavg
. See porkmail.org/era/unix/award.html#cat.