Shell 并发执行 多线程

 

 

遇到ftp到多台机器的问题,等待上一个执行完再执行下一个,时间就会比较长,如果能够同时向多台机器发送文件,就可以达到节约时间的目的。

 

语法结构

#!/bin/bash

……

循环(for 或者 while)

{

   ……

}  &

wait

 

……

 

举个网上找的例子:

#!/bin/bash
mkfifo fd2
exec 9<>fd2
  echo -n -e "1\n1\n1\n" 1>&9
 
  for((i=0;i<20;i++))
   do
   read -u 9
   {
    #your process
 
    sleep 1
    echo "$REPLY"
	echo -ne "1\n" 1>&9
	} &
done
wait
rm -f fd2

你可能感兴趣的:(Shell 并发执行 多线程)