Вот как бы я это сделал, используя P.E. и синтаксис bash.
while read -r vmname uuid; do
uuid=${uuid##*'{'}
uuid=${uuid%'}'*}
vmname=${vmname#*'"'}
vmname=${vmname%'"'*}
printf '%-15s %s\n' "$vmname" "$uuid"
done < <(VBoxManage list vms)
Вы можете запустить vms внутри цикла с совпадением, используя тест, или сохранить вывод в массиве и так далее. Это также должно быть безопасно, даже если в имени виртуальной машины есть {
или }
. Я использую этот код в своем скрипте с 2013 года:-)
Хорошо, исправил. Я нажал Ctrl + Alt + F3 и вошел в систему через терминал. Затем я запустил sudo dnf update
и перезапустил. Все исправилось.