Powershell Hyper-V脚本无法工作?+自动安装Windows
所以我有一个奇怪的问题。执行以下命令时:Powershell Hyper-V脚本无法工作?+自动安装Windows,powershell,automation,hyper-v,Powershell,Automation,Hyper V,所以我有一个奇怪的问题。执行以下命令时: New-VM -Name "MattTest" -MemoryStartupBytes 2GB -BootDevice CD -SwitchName Lab -path c:\VMdocs -NewVHDSizeBytes 40GB –NewVHDPath c:\base.vhdx Set-VMDvdDrive -VMName MattTest -Path C:\ISOFiles\Windows2008. Start-VM -Name MattTes
New-VM -Name "MattTest" -MemoryStartupBytes 2GB -BootDevice CD -SwitchName Lab -path c:\VMdocs -NewVHDSizeBytes 40GB –NewVHDPath c:\base.vhdx
Set-VMDvdDrive -VMName MattTest -Path C:\ISOFiles\Windows2008.
Start-VM -Name MattTest
它可以正常工作,但是,如果我编写一个脚本,我会遇到大量错误,例如,在一个名为PS.ps1的脚本中出现了完全相同的错误,并通过Powershell运行,我会得到:
New VM:参数无效。给定的参数找不到开关
标准在C:\Users\mrsmith\Desktop\PS.ps1:1 char:1
+新VM-名称MattTest-MemoryStartuBytes 2GB-引导设备CD-SwitchName实验室-。。。
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+CategoryInfo:InvalidArgument:Lab:String[New VM],VirtualizationInvalidArgumentException
+FullyQualifiedErrorId:InvalidParameter,Microsoft.HyperV.PowerShell.Commands.NewVMCommand
设置VMDVDRIVE:参数无效。Hyper-V无法启动
查找名为MattTest的虚拟机。在
C:\Users\mrsmith\Desktop\PS.ps1:3字符:1
+设置VMDVDRIVE-VMName MattTest-路径C:\ISOFiles\Windows2008。
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+CategoryInfo:InvalidArgument:MattTest:String[Set-VMDVDRIVE],虚拟化InvalidArgumentException
+FullyQualifiedErrorId:InvalidParameter,Microsoft.HyperV.PowerShell.Commands.SetVMDvdDriveCommand
设置VMDVDRIVE:参数无效。找不到DVD驱动器。
在C:\Users\mrsmith\Desktop\PS.ps1:3 char:1
+设置VMDVDRIVE-VMName MattTest-路径C:\ISOFiles\Windows2008。
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+类别信息:InvalidArgument::[Set-VMDVDRIVE],虚拟化InvalidArgumentException
+FullyQualifiedErrorId:InvalidParameter,Microsoft.HyperV.PowerShell.Commands.SetVMDvdDriveCommand
Start VM:参数无效。Hyper-V无法找到一个
名为MattTest的虚拟机。在
C:\Users\mrsmith\Desktop\PS.ps1:5字符:1
+启动VM-名称测试
+ ~~~~~~~~~~~~~~~~~~~~~~~
+CategoryInfo:InvalidArgument:MattTest:String[Start VM],VirtualizationInvalidArgumentException
+FullyQualifiedErrorId:InvalidParameter,Microsoft.HyperV.PowerShell.Commands.StartVMCommand
我不确定是什么原因造成的?这是否与模块有关,因为我已检查并且Hyper-V cmdlet正在运行,考虑到我可以手动键入这些内容,它们将正常运行
还有一个附带问题:这些说明将出现在安装Windows XXXX屏幕上。有没有办法使这个过程自动化?或者不太喜欢单击“下一步”,选择硬盘驱动器,安装等等。只是为了确保提示,例如“PS C:\Users\mrsmith\Desktop>”不是脚本的一部分,对吗?如果是,请将其移除
看起来,它是脚本的一部分,因为PS是Get进程的别名,它试图将“C:\Users\mrsmith\Desktop”作为进程名传递。oops是我的错,这不应该是我复制它的地方的错误。因此,如果没有提示,脚本将按预期运行?您是问题机器上的本地管理员吗?外壳抬高了吗?是的,事实上我觉得我遇到了一些奇怪的问题,所以当我重新启动时,我实际上得到了不同的结果,我认为更正确的错误。我的意思是单个命令本身可以工作……当我把它放在脚本中时,它就不工作了。你有一个名为“lab”的开关吗?运行Get-VMSwitch以找到答案