shell利用数组分割组合字符串

#!/bin/bash

#接收脚本参数如[sh a.txt 10.0.0.0_3_4_f_u_c_k_8080]
a=$1

#把参数分割成数组
arr=(${a//_/ })

#显示数组长度
#echo ${#arr[@]}

#显示第一个数组元素
echo ${arr[0]}

#分割第一个元素[10.0.0.0 --> 10.0.0]
ip=`echo ${arr[0]}|awk -F. '{print$1"."$2"."$3}'`

if [ ${#arr[@]} -gt 2  ];then

  #计算除了ip和端口外,还有几个元素
  n1=$(( ${#arr[@]} - 2 ))
  #echo $n1
  for((i=1;i<=$n1;i++));
  do
    #echo $i
    #拼接ip
    echo "${ip}.${arr[$i]}" 
  done

fi

 

posted on 2018-03-26 17:16  vijayfly  阅读(755)  评论(0编辑  收藏  举报

导航