自己写的第二个shell脚本,以备日后学习用

自己写的第二个shell脚本,以备日后学习用

#!/bin/bash
dateDir=`date +"%Y-%m-%d"`

vibSrcDir=/home/ben/single/vib_src
outputDir=/home/ben/single/output


vibStart="<vibID>"
vibEnd="</vibID>"

filelist=`ls $vibSrcDir`
for filename in $filelist
do
  echo $filename
  vid=`vibauthor -i -v $vibSrcDir/$filename | grep "VIB ID" | awk '{print $3}' `
  vibId=$'\\\t\\\t'${vibStart}${vid}${vibEnd}
  echo $vibId 
  name=`vibauthor -i -v $vibSrcDir/$filename | grep Name: | awk '{print $2}' `
  echo $name
  version=`vibauthor -i -v $vibSrcDir/$filename | grep Version: | awk '{print $2}' `
  echo $version
  desc=$'\\\t\\\t'$"There are one provider/driver in the bundle:\\n"
  desc=$desc$'\\\t\\\t\\\t'$name$" "$version$";"$'\\n'
  newOutputDir=$outputDir/$dateDir/$name
  mkdir -p $newOutputDir/vib
  sed '/<vibList>/a '"$vibId"'' /home/ben/a_1.xml > $newOutputDir/a_2.xml
  sed -i '/<description>/a '"$desc"''  $newOutputDir/a_2.xml
  cp $vibSrcDir/$filename $newOutputDir/vib 
  vibpublish -b $newOutputDir/a_2.xml -t ESXi,5.5.0 -v $newOutputDir/vib/ -e $newOutputDir/lenovo_extension_$name-20170118.zip -g $newOutputDir/lenovo_extension_$name-20170111_metadata.zip --vendor-code=LNV -n Lenovo
done

两处sed命令执行前后的对比:

<description>
</description>

<description>
        There are one provider/driver in the bundle:
            qlogic-nx2-provider 550.2.8.5-000000;
 </description>

<vibList>                
</vibList>

<vibList>                
        <vibID>qlogic_bootbank_qlogic-nx2-provider_550.2.8.5-000000</vibID>
</vibList>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值