1
在后台运行多个bash函数并等待它们返回
这是一个简单的脚本,可以nvidia-smi在多个主机上运行命令,并将其输出保存到公共文件中。这里的目标是使其异步运行。 &在process_host()函数结尾是否足够?我的脚本正确吗? #!/bin/bash HOSTS=(host1 host2 host3) OUTPUT_FILE=nvidia_smi.txt rm $OUTPUT_FILE process_host() { host=$1 echo "Processing" $host output=`ssh ${host} nvidia-smi` echo ${host} >> $OUTPUT_FILE echo "$output" >> $OUTPUT_FILE } for host in ${HOSTS[@]}; do process_host ${host} & done; wait cat $OUTPUT_FILE