#!/bin/bash set -o errexit set -o nounset set -o pipefail VM_NEW_NAME=$1 # 进入 WORKDIR cd assets # 提取当前OVF文件名 VM_NOW_NAME=$(basename packer-*.ovf | awk -F. '{print $1}') # 重命名OVF文件和VMDK文件 mv "$VM_NOW_NAME".ovf "$VM_NEW_NAME".ovf mv "$VM_NOW_NAME"-1.vmdk "$VM_NEW_NAME"-1.vmdk # 在OVF文件中替换名称 sed -i "s/$VM_NOW_NAME/$VM_NEW_NAME/g" "$VM_NEW_NAME".ovf # 导出成 OVA tar -cf "$VM_NEW_NAME".ova "$VM_NEW_NAME".ovf "$VM_NEW_NAME"-1.vmdk echo "#### PACKER_COMPLETE ####"