shell 数组的几种形式汇总:
1.
HOSTS=()
while read line
do
HOSTS[${#HOSTS[@]}]=$line
done < $hostfile
 
2.
for i in "${A[@]}"; do
    echo $i
done

3.

INFOS="
A,
B,
C,
D
"
for INFO in $INFOS
do

     AREA=`echo $INFO | awk -F ',' '{print $1}'`

     echo $AREA

done

4.#!/bin/bash

ary="hyves nk us it tr ae"

for i in $ary;

do

  echo $i

done

5.#!/bin/bash
      ary=("hyves" "nk" "us" "it" "tr" "ae")
      for i in ${ary[@]};
        do
          echo $i
        done
6.
 
#!/bin/bash
 
arr=("hyves" "nk" "us" "it" "tr" "ae")
 
len=${#arr[@]}
 
for((i=0;i<len;++i))
do
    echo ${arr[$i]}
done
#
7.Foo=("a" "b" "c" "d" "e")
 
for name in ${Foo[@]}
do
  echo $name
done
 
for (( i = 0 ; i < ${#Foo[@]} ; i++ ))
do
  echo ${Foo[$i]}
done
 
8.判断:
#
      ary=(hyves,nk,us,it,tr,ae)
      if [[ "${ary[@]}" =~ $AREA ]]; then
             CODE_PATH=/mnt/htdocs/farm/
             echo "$CODE_PATH"
      else
             echo "OK"
       fi
#

============================================

`cat hostfile |tr '\n' ','`  文件列表合并一行

[root@server ~]# A=$(sed -n '$=' a.txt)
[root@server ~]# sed $(($A-3+1)),${A}d a.txt

或者使用上面两条命令。删除的是倒数3行的。
如果删除倒数300 ,那就把3改为300 就可以了。

 

 

pdsh 

http://www.grid5000.fr/mediawiki/index.php/PDSH

time pdsh -R ssh -l root  -w `cat host-testweb.txt|tr '\n' ','` "w|grep load ;hostname "

pssh

time pssh -h hostfile    -P "w|grep load ;hostname "