Powershell 新分区-驱动器号选项

Powershell 新分区-驱动器号选项,powershell,Powershell,如何在PowerShell中创建单个char变量 我正在使用以下脚本格式化添加到Windows 2016服务器的新虚拟磁盘。问题是,微软没有给出它想要的-DriveLetter选项的任何例子。我不知道它想要什么。一个字符,我明白,但为什么“s”错了 我反复遇到的错误是: 新分区:无效参数 活动ID:{6fab380c-c0df-4f8d-bdca-f0fed3250238} 第1行字符:22 + ... -2号|新分区-分配drivelette-drivelette$drivelette。。。

如何在PowerShell中创建单个char变量

我正在使用以下脚本格式化添加到Windows 2016服务器的新虚拟磁盘。问题是,微软没有给出它想要的-DriveLetter选项的任何例子。我不知道它想要什么。一个字符,我明白,但为什么“s”错了

我反复遇到的错误是:

新分区:无效参数 活动ID:{6fab380c-c0df-4f8d-bdca-f0fed3250238} 第1行字符:22 + ... -2号|新分区-分配drivelette-drivelette$drivelette。。。 + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +CategoryInfo:InvalidArgument:(StorageWMI:ROOT/Microsoft/Windows/Storage/MSFT_Disk)[新分区], CimException +FullyQualifiedErrorId:StorageWMI 5,新分区

驱动器联机后,我会继续尝试:

New-Partition -DiskNumber 2 -AssignDriveLetter -DriveLetter $driveletter -UseMaximumSize |
    Format-Volume -FileSystem NTFS -NewFileSystemLabel "App" -Confirm:$false
无济于事


Microsoft关于该命令的文档称,它需要一个字符,但没有提供如何提供该字符的信息。

答案有两个方面:

按如下方式创建char变量:

$driveletter = [char]"S"

其次,删除-AssignDriveLetter选项,因为这对于-DriveLetter是多余和不必要的。

作为旁注,我在Windows 10中使用面向磁盘/驱动器的cmdlet时运气不好,经常会使用
diskpart
。你能发布你的全部异常信息吗?如果您试图传递一个显式字符,您可以对字符串进行类型转换:
$driveletter=[char]'S'
这里的一个问题是您同时使用了
-driveletter
-AssignDriveLetter
<代码>-AssignDriveLetter将自动从池中第一个可用的驱动器号中分配驱动器号。已更新post中的错误。如果可以的话,我真的更喜欢使用powershell,因为它更容易与CloudBolt集成。我认为diskpart不适用于此。@AdminOfThings谢谢,我将尝试删除该部分。@AdminOfThings谢谢,除了前面关于如何强制转换为字符的评论外,这也起到了作用。
$driveletter = [char]"S"