![在 CMD 中转义 Windows 路径](https://linux22.com/image/1431195/%E5%9C%A8%20CMD%20%E4%B8%AD%E8%BD%AC%E4%B9%89%20Windows%20%E8%B7%AF%E5%BE%84.png)
这应该很容易,但我却想不起来。我在网上查过,证实如果我用引号括住 Windows 路径,它就会处理空格。但 VirtualBox 不行。我忽略了什么?
VBoxManage modifyhd "C:\Users\sam\VirtualBox VMs\Ubuntu 14 desktop.vdi" --resize 16480
=> 'C:\Users\sam\VirtualBox VMs\Ubuntu 14 Desktop.vdi' (VERR_FILE_NOT_FOUND)
这次尝试:
VBoxManage modifyhd C:\Users\sam\"VirtualBox VMs"\"Ubuntu 14 desktop.vdi" --resize 16480
=> 语法错误:无效参数‘VMs"Ubuntu 14 Desktop.vdi’
距离目标更近了,但仍然没有成功。
VBoxManage modifyhd C:\Users\sam\'VirtualBox VMs'\'Ubuntu 14 desktop.vdi' --resize 16480
=> 语法错误:无效参数‘VMs’\‘Ubuntu’”
好的,是时候使用蛮力了。你知道什么时候使用 tab 键来完成文件夹名称吗?我将目录更改为 sam,当我尝试使用 tab 键输入“VirtualBox”的名称时,它返回了 .virtualbox 目录名称,这不是我需要的。我尝试在 CMD 中引用 VirtualBox VM,但它找不到该文件夹名称。这可能是一个线索,但我不确定如何搜索解决方案。我忽略了什么?谢谢,sam
答案1
看起来最好的选择可能是从路径中删除空格:
rename "VirtualBox VMs" VirtualBoxVMs
rename "Ubuntu 14 desktop.vdi" Ubuntu14desktop.vdi
然后更新 VirtualBox 配置以匹配。您可以直接使用 VB 编辑配置文件,或者在媒体管理器中更新磁盘路径。
答案2
我的建议是使用 uuid。你可以使用以下方法获取它:
VBoxManage.exe showhdinfo "c:\MyMachine.vdi"
或者使用这个技巧:重命名 vdi,然后单击 vm 的配置并转到存储。然后尝试将重命名的 vdi 添加为硬盘驱动器。您将收到错误,但如果您展开错误消息,您将看到 uuid。因此只需将其复制并粘贴到命令中即可:
VBoxManage modifyhd $UUID --resize 16480
希望这能对某人有所帮助