Get-SmbOpenFile
Retrieves basic information about the files that are open on behalf of the clients of the SMB server.
Syntax
Get-SmbOpenFile
[[-FileId] <UInt64[]>]
[[-SessionId] <UInt64[]>]
[[-ClientComputerName] <String[]>]
[[-ClientUserName] <String[]>]
[[-ScopeName] <String[]>]
[[-ClusterNodeName] <String[]>]
[-IncludeHidden]
[-SmbInstance <SmbInstance>]
[-CimSession <CimSession[]>]
[-ThrottleLimit <Int32>]
[-AsJob]
[<CommonParameters>]
Description
The Get-SmbOpenFile cmdlet retrieves basic information about the files that are open on behalf of the clients of the Server Message Block (SMB) server.
Examples
Example 1: Get information about opened files
PS C:\>Get-SMBOpenFile
FileId SessionId Path ShareRelativePath ClientComputerName ClientUserName
------ --------- ---- ----------------- ------------------ --------------
4415226382229 4415226380377 C:\ClusterStorag... VM4\Virtual Mach... 192.168.102.14 Contoso\Contoso-HV2$
4415226382237 4415226380385 C:\ClusterStorag... VM4\VIRTUAL MACH... 192.168.102.14 Contoso\Contoso-HV2$
4415226383517 4415226380393 C:\ClusterStorag... VM4\VIRTUAL MACH... 192.168.102.14 Contoso\Contoso-HV2$
4415226383521 4415226380393 C:\ClusterStorag... VM4\Virtual Mach... 192.168.102.14 Contoso\Contoso-HV2$
4415226383529 4415226380393 C:\ClusterStorag... VM4\Virtual Mach... 192.168.102.14 Contoso\Contoso-HV2$
4415226383569 4415226380393 C:\ClusterStorag... VM4.VHDX 192.168.102.14 Contoso\Contoso-HV2$
4415226383589 4415226380393 C:\ClusterStorag... VM4.VHDX 192.168.102.14 Contoso\Contoso-HV2$
8813541326973 8813272891469 I:\VMS\VM1\VIRTU... VM1\VIRTUAL MACH... 192.168.101.13 Contoso\Contoso-HV1$
8813541326977 8813272891469 I:\VMS\VM1\Virtu... VM1\Virtual Mach... 192.168.101.13 Contoso\Contoso-HV1$
8813541326993 8813272891469 I:\VMS\VM1.VHDX VM1.VHDX 192.168.101.13 Contoso\Contoso-HV1$
8813541326997 8813272891469 I:\VMS\VM1\Virtu... VM1\Virtual Mach... 192.168.101.13 Contoso\Contoso-HV1$
8813541327109 8813272891469 I:\VMS\VM1.VHDX VM1.VHDX 192.168.101.13 Contoso\Contoso-HV1$
8813272891805 8813272891441 I:\VMS\VM1\Virtu... VM1\Virtual Mach... 192.168.101.13 Contoso\Contoso-HV1$
8813272891813 8813272891449 I:\VMS\VM1\VIRTU... VM1\VIRTUAL MACH... 192.168.101.13 Contoso\Contoso-HV1$
8813541327273 8813272891581 D:\VMS\VM5\VIRTU... VM5\VIRTUAL MACH... 192.168.102.13 Contoso\Contoso-HV1$
8813541327281 8813272891585 D:\VMS\VM5\VIRTU... VM5\VIRTUAL MACH... 192.168.102.13 Contoso\Contoso-HV1$
8813272892105 8813272891457 C:\ClusterStorag... VM3\Virtual Mach... 192.168.101.13 Contoso\Contoso-HV1$
8813272892113 8813272891461 C:\ClusterStorag... VM3\VIRTUAL MACH... 192.168.101.13 Contoso\Contoso-HV1$
8813541328145 8813272891517 J:\VMS\VM2\VIRTU... VM2\VIRTUAL MACH... 192.168.102.14 Contoso\Contoso-HV2$
8813541328149 8813272891517 J:\VMS\VM2\Virtu... VM2\Virtual Mach... 192.168.102.14 Contoso\Contoso-HV2$
8813541328157 8813272891517 J:\VMS\VM2\Virtu... VM2\Virtual Mach... 192.168.102.14 Contoso\Contoso-HV2$
8813541328213 8813272891517 J:\VMS\VM2.VHDX VM2.VHDX 192.168.102.14 Contoso\Contoso-HV2$
8813272892765 8813272891489 J:\VMS\VM2\Virtu... VM2\Virtual Mach... 192.168.102.14 Contoso\Contoso-HV2$
8813541328225 8813272891517 J:\VMS\VM2.VHDX VM2.VHDX 192.168.102.14 Contoso\Contoso-HV2$
8813272892773 8813272891493 J:\VMS\VM2\VIRTU... VM2\VIRTUAL MACH... 192.168.102.14 Contoso\Contoso-HV2$
8813541328421 8813272891609 D:\VMS\VM5\Virtu... VM5\Virtual Mach... 192.168.102.13 Contoso\Contoso-HV1$
8813541328425 8813272891609 D:\VMS\VM5\VIRTU... VM5\VIRTUAL MACH... 192.168.102.13 Contoso\Contoso-HV1$
8813541328457 8813272891609 D:\VMS\VM5\Virtu... VM5\Virtual Mach... 192.168.102.13 Contoso\Contoso-HV1$
8813541328501 8813272891613 C:\ClusterStorag... VM3.VHDX 192.168.101.13 Contoso\Contoso-HV1$
8813541328529 8813272891613 C:\ClusterStorag... VM3.VHDX 192.168.101.13 Contoso\Contoso-HV1$
This command retrieves basic information about the files that are open on behalf of the clients of the SMB server.
Example 2: Get information about an opened file
PS C:\>Get-SmbOpenFile -FileId 4415226383569 | Select-Object -Property *
ClientComputerName : 192.168.102.14
ClientUserName : Contoso\Contoso-HV2$
ClusterNodeName : Contoso-FS2
ContinuouslyAvailable : True
Encrypted : False
FileId : 4415226383569
Locks : 1
Path : C:\ClusterStorage\Volume2\VMS\VM4.VHDX
Permissions : 1179785
ScopeName : Contoso-SO
SessionId : 4415226380393
ShareRelativePath : VM4.VHDX
PSComputerName :
CimClass : ROOT/Microsoft/Windows/SMB:MSFT_SmbOpenFile
CimInstanceProperties : {ClientComputerName, ClientUserName, ClusterNodeName, ContinuouslyAvailable...}
CimSystemProperties : Microsoft.Management.Infrastructure.CimSystemProperties
This command retrieves all information about the file identified as 4415226383569 that is open on behalf of the clients of the SMB server.
Example 3: Get information about a file opened for an SMB client
PS C:\>Get-SmbOpenFile -SessionId 4415226380393
FileId SessionId Path ShareRelativePath ClientComputerName ClientUserName
------ --------- ---- ----------------- ------------------ --------------
4415226383517 4415226380393 C:\ClusterStorag... VM4\VIRTUAL MACH... 192.168.102.14 Contoso\Contoso-HV2$
4415226383521 4415226380393 C:\ClusterStorag... VM4\Virtual Mach... 192.168.102.14 Contoso\Contoso-HV2$
4415226383529 4415226380393 C:\ClusterStorag... VM4\Virtual Mach... 192.168.102.14 Contoso\Contoso-HV2$
4415226383569 4415226380393 C:\ClusterStorag... VM4.VHDX 192.168.102.14 Contoso\Contoso-HV2$
4415226383589 4415226380393 C:\ClusterStorag... VM4.VHDX 192.168.102.14 Contoso\Contoso-HV2$
This command retrieves basic information about the files that are open on behalf of the SMB client identified as 4415226380393 of the SMB server.
Example 4: Get information about a file opened for an SMB client on an SMB server
PS C:\>Get-SmbOpenFile -ScopeName "Contoso-SO"
FileId SessionId Path ShareRelativePath ClientComputerName ClientUserName
------ --------- ---- ----------------- ------------------ --------------
4415226382229 4415226380377 C:\ClusterStorag... VM4\Virtual Mach... 192.168.102.14 Contoso\Contoso-HV2$
4415226382237 4415226380385 C:\ClusterStorag... VM4\VIRTUAL MACH... 192.168.102.14 Contoso\Contoso-HV2$
4415226383517 4415226380393 C:\ClusterStorag... VM4\VIRTUAL MACH... 192.168.102.14 Contoso\Contoso-HV2$
4415226383521 4415226380393 C:\ClusterStorag... VM4\Virtual Mach... 192.168.102.14 Contoso\Contoso-HV2$
4415226383529 4415226380393 C:\ClusterStorag... VM4\Virtual Mach... 192.168.102.14 Contoso\Contoso-HV2$
4415226383569 4415226380393 C:\ClusterStorag... VM4.VHDX 192.168.102.14 Contoso\Contoso-HV2$
4415226383589 4415226380393 C:\ClusterStorag... VM4.VHDX 192.168.102.14 Contoso\Contoso-HV2$
8813272892105 8813272891457 C:\ClusterStorag... VM3\Virtual Mach... 192.168.101.13 Contoso\Contoso-HV1$
8813272892113 8813272891461 C:\ClusterStorag... VM3\VIRTUAL MACH... 192.168.101.13 Contoso\Contoso-HV1$
8813541328501 8813272891613 C:\ClusterStorag... VM3.VHDX 192.168.101.13 Contoso\Contoso-HV1$
8813541328529 8813272891613 C:\ClusterStorag... VM3.VHDX 192.168.101.13 Contoso\Contoso-HV1$
This command retrieves basic information about the files that are open on behalf of the SMB client of the SMB server named Contoso-SO.
Example 5: Get information about files that have a specified file name extension
PS C:\>Get-SmbOpenFile | Where-Object -Property ShareRelativePath -Match ".VHDX"
FileId SessionId Path ShareRelativePath ClientComputerName ClientUserName
------ --------- ---- ----------------- ------------------ --------------
4415226383569 4415226380393 C:\ClusterStorag... VM4.VHDX 192.168.102.14 Contoso\Contoso-HV2$
4415226383589 4415226380393 C:\ClusterStorag... VM4.VHDX 192.168.102.14 Contoso\Contoso-HV2$
8813541326993 8813272891469 I:\VMS\VM1.VHDX VM1.VHDX 192.168.101.13 Contoso\Contoso-HV1$
8813541327109 8813272891469 I:\VMS\VM1.VHDX VM1.VHDX 192.168.101.13 Contoso\Contoso-HV1$
8813541328213 8813272891517 J:\VMS\VM2.VHDX VM2.VHDX 192.168.102.14 Contoso\Contoso-HV2$
8813541328225 8813272891517 J:\VMS\VM2.VHDX VM2.VHDX 192.168.102.14 Contoso\Contoso-HV2$
8813541328501 8813272891613 C:\ClusterStorag... VM3.VHDX 192.168.101.13 Contoso\Contoso-HV1$
8813541328529 8813272891613 C:\ClusterStorag... VM3.VHDX 192.168.101.13 Contoso\Contoso-HV1$
This command retrieves basic information about the files that have the file name extension of .VHDX that are open on behalf of the SMB client of the SMB server.
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 |
-ClientComputerName
Specifies the filters for the returned open files so that only files opened from the specified client computer are returned.
Type: | String[] |
Position: | 3 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ClientUserName
Specifies the name of the user whose open files are retrieved.
Type: | String[] |
Position: | 4 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ClusterNodeName
Specifies, in the case of a share hosted by a windows cluster, the name of the server which hosts the open files that are retrieved.
Type: | String[] |
Position: | 6 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-FileId
Specifies the file identifier (ID) of the file for which the information is retrieved.
Type: | UInt64[] |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-IncludeHidden
Indicates that handles that are created and used internally are enumerated also.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ScopeName
Specifies the scope of the open files that are retrieved.
Type: | String[] |
Position: | 5 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-SessionId
Specifies a session ID. This cmdlet returns only files that have been opened in the specified session.
Type: | UInt64[] |
Position: | 2 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-SmbInstance
Specifies the input to this cmdlet. You can use this parameter, or you can pipe the input to this cmdlet.
Type: | SmbInstance |
Accepted values: | Default, CSV, SBL, SR |
Position: | Named |
Default value: | None |
Required: | False |
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 |
Inputs
None
Outputs
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.
This cmdlet return a MSFT_SmbOpenFile object that represents the files opened on the SMB server.