diff --git a/vmcreate1.sh b/vmcreate1.sh index 27d801d..815e691 100644 --- a/vmcreate1.sh +++ b/vmcreate1.sh @@ -66,7 +66,7 @@ ipcheck() { } # Функция для проверки hostname на валидные символы (буквы, цифры, дефис) -hostcheck (){ +hostcheck(){ local hostname=$1 local pattern="^[a-zA-Z0-9-]+$" if [[ "$hostname" =~ $pattern ]]; then @@ -76,13 +76,13 @@ hostcheck (){ fi } -keypair_generate (){ +keypair_generate(){ ssh-keygen -t rsa -N "" -f $privkey pubkey="$privkey".pub echo "Keypair generated." } -mksnippet (){ +mksnippet(){ snippet="${path}${vmid}_user.yaml" cp ./user.yaml "$snippet" sed -i "s/HOSTNAME/$hostname/g" "$snippet" @@ -93,7 +93,7 @@ mksnippet (){ phash=$(cat $password | mkpasswd -m sha-256 -s) sed -i "s|.*password.*| - ${phash}|" "$snippet" fi - if [[ -v $pubkey]]; then + if [[ -v $pubkey ]]; then sed -i "s|.*ssh-rsa.*| - (cat ${pubkey})|" "$snippet" fi echo "Snippet $snippet created" @@ -113,6 +113,7 @@ while getopts "a:f:hk:u:p:d:t" opt; do *) echo "Invalid option. Use '-h' for help."; exit 1;; esac done + # Удаляем обработанные опции, оставляя только аргументы скрипта shift "$((OPTIND - 1))" echo "DEBUG options amount: $#"