[尝试运行我的脚本时,出现以下错误消息。
脚本:
$extenddisk= @"
$letter = Get-WmiObject -Class Win32_CDROMDrive | select -ExpandProperty Drive
Set-WmiInstance -InputObject ( Get-WmiObject -Class Win32_volume -Filter "DriveLetter = '$letter'" ) -Arguments @{DriveLetter='Z:'}
$newdisk = @(get-disk | Where-Object partitionstyle -eq 'raw')
for($i = 0; $i -lt $newdisk.Count ; $i++)
{
$disknum = $newdisk[$i].Number
$dl = get-Disk $disknum |
Initialize-Disk -PartitionStyle GPT -PassThru |
New-Partition -AssignDriveLetter -UseMaximumSize
Format-Volume -driveletter $dl.Driveletter -FileSystem NTFS -Confirm:$false
}
"@
Invoke-VMScript -ScriptText $extenddisk -VM $vm -GuestCredential $VMLocalCredential -ScriptType Powershell
错误:
WARNING: The version of VMware Tools on VM 'Hostname' is out of date and may cause Invoke-VMScript to work improperly.
ScriptOutput
-----------------------------------------------------------------------------------------------------------------------| At line:9 char:27
| + for( = 0; -lt .Count ; ++)
| + ~
| Missing expression after unary operator '++'.
| + CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
| + FullyQualifiedErrorId : MissingExpressionAfterOperator
|
|
-----------------------------------------------------------------------------------------------------------------------
当您在此处字符串中使用"
(双引号)时,PowerShell将尝试在其内容中扩展所有变量和包含的子表达式。使用'
(单引号)代替:
$extenddisk = @'
...
'@