#!/bin/bash INPUT_FILE=$1 if [ -z "$INPUT_FILE" ]; then echo "Usage: $0 " echo "Input file format:" echo -e "\tusername pool_name" echo -e "\tusername pool_name" echo -e "\t..." exit 1 fi NEXT_VM_ID=202404101 TEMPLATE_VM_ID=202404001 while read -r line; do USERNAME=$(echo "$line" | awk '{print $1}') POOL_NAME=$(echo "$line" | awk '{print $2}') echo "Creating VM for $USERNAME ($POOL_NAME)" qm clone $TEMPLATE_VM_ID $NEXT_VM_ID --name "$USERNAME" --full false --pool $POOL_NAME pvesh set /access/acl --path /vms/$NEXT_VM_ID --roles PVEVMUser --users "$USERNAME@arda.lan" ((NEXT_VM_ID++)) done < "$INPUT_FILE"