powershell如何删除系统盘以外的所有硬盘分区,并重新创建格式化分区
时间: 2024-02-11 21:06:03 浏览: 47
在 PowerShell 中,可以使用以下命令删除系统盘以外的所有硬盘分区:
```
Get-Disk | Where-Object {$_.IsSystem -eq $False} | Clear-Disk -RemoveData
```
上述命令会获取所有非系统盘的磁盘,然后使用 `Clear-Disk` 命令清除磁盘上的所有分区和数据。
接下来,您可以使用以下命令重新创建并格式化分区:
```
Get-Disk | Where-Object {$_.IsSystem -eq $False} | New-Partition -UseMaximumSize | Format-Volume -FileSystem NTFS -Confirm:$false
```
上述命令会获取所有非系统盘的磁盘,然后使用 `New-Partition` 命令创建一个新的分区,并使用 `Format-Volume` 命令将其格式化为 NTFS 文件系统。
请注意,这些命令将删除所有非系统盘的分区和数据,因此请确保在执行此操作之前备份所有重要数据。
相关问题
用powershell写一个脚本,删除系统盘之外的硬盘分区并重建为硬盘创建一个分区
以下是 PowerShell 脚本,用于删除系统盘之外的硬盘分区并重建为一个分区。请注意,这个脚本将会删除选定磁盘上的所有非系统分区,所以请务必在运行脚本之前备份您的数据。另外,请确保以管理员身份运行 PowerShell:
```
# 获取计算机中所有磁盘的列表
$disks = Get-Disk | Where-Object {$_.IsSystem -eq $false}
# 遍历每个非系统磁盘
foreach ($disk in $disks) {
# 获取磁盘上所有分区的列表
$partitions = $disk | Get-Partition
# 遍历每个分区
foreach ($partition in $partitions) {
# 删除非系统分区
if ($partition.AccessPaths -notcontains "C:\") {
Write-Host "Deleting partition $($partition.PartitionNumber) on disk $($disk.Number)..."
Remove-Partition -InputObject $partition -Confirm:$false
}
}
# 创建新分区
Write-Host "Creating new partition on disk $($disk.Number)..."
New-Partition -DiskNumber $disk.Number -UseMaximumSize -AssignDriveLetter | Format-Volume -FileSystem NTFS -Confirm:$false
}
```
这个脚本会先获取计算机中所有非系统磁盘的列表,然后遍历每个磁盘,删除所有非系统分区,最后为每个磁盘创建一个新的分区并格式化为 NTFS 文件系统。
用PowerShell 脚本,用于获取所有硬盘,禁用并删除不包含系统盘及USB设备和系统盘的所有分区,清除磁盘签名,创建风区并格式化
好的,以下是用 PowerShell 脚本来实现你所说的功能:
```powershell
# 获取所有硬盘
$disks = Get-Disk | Where-Object MediaType -eq "Fixed"
# 获取系统盘
$systemDrive = $env:SystemDrive.TrimEnd("\")
$systemDisk = Get-Disk | Where-Object Number -eq (Get-Partition -DriveLetter $systemDrive).DiskNumber
# 禁用并删除不包含系统盘及USB设备和系统盘的所有分区,清除磁盘签名
foreach ($disk in $disks) {
# 跳过系统盘和 USB 设备
$usbDevices = Get-PnpDevice -Class "Win32_DiskDrive" | Where-Object {$_.InterfaceType -eq "USB"}
if (($usbDevices.PNPDeviceID -contains $disk.DeviceID) -or ($disk.Number -eq $systemDisk.Number)) {
continue
}
$driveLetters = Get-Partition -DiskNumber $disk.Number | Select-Object -ExpandProperty DriveLetter
if ($driveLetters) {
$driveLetters | ForEach-Object {
Disable-Partition -DriveLetter $_ -Confirm:$false
Remove-Partition -DriveLetter $_ -Confirm:$false
}
Clear-Disk -Number $disk.Number -RemoveData -Confirm:$false
}
}
# 创建分区并格式化
foreach ($disk in $disks) {
# 跳过系统盘和 USB 设备
if (($usbDevices.PNPDeviceID -contains $disk.DeviceID) -or ($disk.Number -eq $systemDisk.Number)) {
continue
}
New-Partition -DiskNumber $disk.Number -UseMaximumSize -AssignDriveLetter | Format-Volume -FileSystem NTFS -Confirm:$false
}
```
这个脚本首先获取所有硬盘和系统盘,然后禁用并删除不包含系统盘及 USB 设备和系统盘的所有分区,并清除磁盘签名。最后,它会为每个硬盘创建分区并格式化为 NTFS 文件系统。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)