Resize-Partition

Resizes a partition and the underlying file system.

Syntax

Resize-Partition
      -DiskId <String[]>
      -Offset <UInt64[]>
      [-Size] <UInt64>
      [-CimSession <CimSession[]>]
      [-ThrottleLimit <Int32>]
      [-AsJob]
      [-PassThru]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Resize-Partition
      [-DiskNumber] <UInt32[]>
      [-PartitionNumber] <UInt32[]>
      [-Size] <UInt64>
      [-CimSession <CimSession[]>]
      [-ThrottleLimit <Int32>]
      [-AsJob]
      [-PassThru]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Resize-Partition
      -DriveLetter <Char[]>
      [-Size] <UInt64>
      [-CimSession <CimSession[]>]
      [-ThrottleLimit <Int32>]
      [-AsJob]
      [-PassThru]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Resize-Partition
      -InputObject <CimInstance[]>
      [-Size] <UInt64>
      [-CimSession <CimSession[]>]
      [-ThrottleLimit <Int32>]
      [-AsJob]
      [-PassThru]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

The Resize-Partition cmdlet resizes a partition and the underlying file system.

Examples

EXAMPLE 1

PS C:\>Get-Partition -DiskNumber 3 -PartitionNumber 2
Disk Number: 3 
 
PartitionNumber  DriveLetter Offset                                        Size Type 
---------------  ----------- ------                                        ---- ---- 
2                D           135266304                                931.39 GB Basic 

Resize the partition to 900GB.
PS C:\>Resize-Partition -DiskNumber 3 -PartitionNumber 2 -Size (900GB)


The partition is now 900GB.
PS C:\>Get-Partition -DiskNumber 3 -PartitionNumber 2
Disk Number: 3 
 
PartitionNumber  DriveLetter Offset                                        Size Type 
---------------  ----------- ------                                        ---- ---- 
2                D           135266304                                   900 GB Basic 

Get the partition sizes.
PS C:\>$size = (Get-PartitionSupportedSize -DiskNumber 3 -PartitionNumber 2)


Resize to the maximum size.
PS C:\>Resize-Partition -DiskNumber 3 -PartitionNumber 2 -Size $size.SizeMax

This example starts with a 931.39 GB partition.

Parameters

-AsJob

ps_cimcommon_asjob

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CimSession

Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSessionhttp://go.microsoft.com/fwlink/p/?LinkId=227967 or Get-CimSessionhttp://go.microsoft.com/fwlink/p/?LinkId=227966 cmdlet. The default is the current session on the local computer.

Type:CimSession[]
Aliases:Session
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Prompts you for confirmation before running the cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DiskId

Specifies an ID used to identify a disk in the system.

Type:String[]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-DiskNumber

Specifies the number of the disk.

Type:UInt32[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-DriveLetter

Specifies a letter used to identify a drive or volume in the system.

Type:Char[]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-InputObject

Accepts an object from the pipeline as input.

Type:CimInstance[]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Offset

Specifies the starting offset, in bytes.

Type:UInt64[]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PartitionNumber

Specifies the number of the partition. The number of the partition to be resized.

Type:UInt32[]
Aliases:Number
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PassThru

Sends items from the interactive window down the pipeline as input to other cmdlets. By default, this cmdlet does not generate any output.

To send items from the interactive window down the pipeline, click to select the items and then click OK. Shift-click and Ctrl-click are supported.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Size

Specifies the size of the partition to create. If not specified, then the number will default to Bytes. The acceptable values for this parameter are: Bytes, KB, MB, GB, or TB. The size may be defined by a user.

Type:UInt64
Position:2
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ThrottleLimit

Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Inputs

CimInstance

The Microsoft.Management.Infrastructure.CimInstance object is a wrapper class that displays Windows Management Instrumentation (WMI) objects. The path after the pound sign (#) provides the namespace and class name for the underlying WMI object.

Outputs

CimInstance

The Microsoft.Management.Infrastructure.CimInstance object is a wrapper class that displays Windows Management Instrumentation (WMI) objects. The path after the pound sign (#) provides the namespace and class name for the underlying WMI object.