Set-FileStorageTier

Assigns a file to a storage tier.

Syntax

Set-FileStorageTier
   -FilePath <String>
   -DesiredStorageTierFriendlyName <String>
   [-CimSession <CimSession[]>]
   [-ThrottleLimit <Int32>]
   [-AsJob]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-FileStorageTier
   -FilePath <String>
   -DesiredStorageTier <CimInstance>
   [-CimSession <CimSession[]>]
   [-ThrottleLimit <Int32>]
   [-AsJob]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-FileStorageTier
   -FilePath <String>
   -DesiredStorageTierUniqueId <String>
   [-CimSession <CimSession[]>]
   [-ThrottleLimit <Int32>]
   [-AsJob]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

The Set-FileStorageTier cmdlet assigns a file to a specified storage tier. Assigning a file to a tier is also called pinning the file to a tier. To pin a file to a storage tier, the file must be on a volume that is hosted by the same tiered storage space. If you pin a file that is already assigned to a different tier, the file changes assignment the next time tier optimization takes place.

Examples

Example 1: Pin a file to a storage tier

PS C:\> $StorageTier = Get-StorageTier -FriendlyName "Tier07"
PS C:\> Set-FileStorageTier -DesiredStorageTier $StorageTier -FilePath "D:\DataFile06.txt"

The first command uses the Get-StorageTier cmdlet to get a storage tier named Tier07, and then stores the tier in the $StorageTier variable.

The second command pins the specified file to a storage tier. The command specifies the storage tier by using the object stored in the $StorageTier variable.

Example 2: Pin a file to a storage tier by using an ID

PS C:\> $StorageTier = Get- StorageTier -FriendlyName "Tier07"
PS C:\> Set-FileStorageTier -DesiredStorageTierUniqueId $StorageTier.UniqueId -FilePath "D:\DataFile06.txt"

The first command uses the Get-StorageTier cmdlet to get a storage tier named Tier07, and then stores the tier in the $StorageTier variable.

The second command pins the specified file to a storage tier. The command specifies the ID of the storage tier by using the UniqueID property of the storage tier object stored in the $StorageTier variable.

Parameters

-AsJob

Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete.

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-CimSession or Get-CimSession 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

-DesiredStorageTier

Specifies the storage tier, as a CimInstance object, to pin a file to. To obtain a storage tier object, use the Get-StorageTier cmdlet.

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

-DesiredStorageTierFriendlyName

Specifies the friendly name of a storage tier to pin a file to.

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

-DesiredStorageTierUniqueId

Specifies the unique ID, as a string, of a storage tier to pin a file to.

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

-FilePath

Specifies the full path of a file. The cmdlet pins the file that you specify to a storage tier.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
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

You can use the pipeline operator to pass an MSFT_StorageTier object to the DesiredStorageTier parameter.

Outputs

None

By default, this cmdlet doesn't return any output.

Notes

  • When used in Failover Cluster, cmdlets from the Storage module operate on cluster level (all servers in the cluster).