Repair-FileIntegrity
Repairs a corrupted file on an NTFS or ReFS volume.
Syntax
Repair-FileIntegrity
[-FileName] <String>
[-CimSession <CimSession[]>]
[-ThrottleLimit <Int32>]
[-AsJob]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
The Repair-FileIntegrity cmdlet repairs a corrupted file on an NTFS file system volume or a Resilient File System (ReFS) volume. For the cmdlet to repair a file, the file must be on a storage volume that provides redundancy, and the file must have integrity turned on. This cmdlet does not repair corrupted file metadata.
Examples
Example 1: Repair a file
PS C:\>Repair-FileIntegrity -FileName 'H:\Temp\Text Document.txt'
This command repairs a file. Because the repair proceeds without error, the cmdlet does not display any message.
Example 2: Attempt to repair a file that cannot be repaired
PS C:\>Repair-FileIntegrity -FileName 'J:\Temp\Text Document.txt'
Repair-FileIntegrity : The storage device does not provide redundancy.
This command attempts to repair a file. In this example, the cmdlet cannot repair the file and therefore displays an explanation.
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 |
-FileName
Specifies a file name. The cmdlet attempts to repair the file that you specify.
Type: | String |
Aliases: | FullName |
Position: | 0 |
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
To obtain a FileInfo object, use the Get-Item cmdlet for a specified file name. The cmdlet uses the FullName property as the value of the FileName parameter.
To obtain a DirectoryInfo object, use Get-Item for a specified directory name. The cmdlet uses the FullName property as the value of the FileName parameter.
Outputs
None
Notes
- When used in Failover Cluster, cmdlets from the Storage module operate on cluster level (all servers in the cluster).