< Back
Get-SmbShare
Post
NAME Get-SmbShare
SYNOPSIS
Retrieves the SMB shares on the computer.
SYNTAX
Get-SmbShare [[-Name] <String[]>] [[-ScopeName] <String[]>] [-AvailabilityType <AvailabilityType[]>] [-CachingMode <CachingMode[]>] [-CaTimeout
<UInt32[]>] [-CimSession <CimSession[]>] [-ConcurrentUserLimit <UInt32[]>] [-ContinuouslyAvailable <Boolean[]>] [-EncryptData <Boolean[]>]
[-FolderEnumerationMode <FolderEnumerationMode[]>] [-IncludeHidden] [-Scoped <Boolean[]>] [-ShareState <ShareState[]>] [-SmbInstance {Default | CSV}]
[-Special <Boolean[]>] [-ThrottleLimit <Int32>] [<CommonParameters>]
DESCRIPTION
The Get-SmbShare cmdlet retrieves objects that represent the Server Message Block (SMB) shares being displayed by the computer.
PARAMETERS
-AvailabilityType [<AvailabilityType[]>]
Specifies the cluster type of the shares being enumerated.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-CachingMode [<CachingMode[]>]
Specifies the caching mode of the shares being enumerated.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-CaTimeout [<UInt32[]>]
Specifies the continuous availability time-out of the shares being enumerated.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-CimSession [<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.
Required? false
Position? named
Default value none
Accept pipeline input? false
Accept wildcard characters? false
-ConcurrentUserLimit [<UInt32[]>]
Specifies the concurrent user limit of the shares being enumerated.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-ContinuouslyAvailable [<Boolean[]>]
Indicates that the shares being enumerated should be continuously available.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-EncryptData [<Boolean[]>]
Indicates that the shares being enumerated should be encrypted.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-FolderEnumerationMode [<FolderEnumerationMode[]>]
Specifies the folder enumeration mode of the shares being enumerated.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-IncludeHidden [<SwitchParameter>]
Indicates that shares that are created and used internally are also enumerated.
Required? false
Position? named
Default value none
Accept pipeline input? false
Accept wildcard characters? false
-Name [<String[]>]
Specifies one or more SMB shares by share name.
Required? false
Position? 2
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-Scoped [<Boolean[]>]
Indicates that the shares to be numerated should be scoped.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-ScopeName [<String[]>]
Specifies the scope of the share by name.
Required? false
Position? 3
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-ShareState [<ShareState[]>]
Specifies the state of the shares being enumerated.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-SmbInstance [<Microsoft.PowerShell.Cmdletization.GeneratedTypes.SmbShare.SmbInstance>]
Specifies the input to this cmdlet. You can use this parameter, or you can pipe the input to this cmdlet.
Required? false
Position? named
Default value none
Accept pipeline input? true(ByPropertyName)
Accept wildcard characters? false
-Special [<Boolean[]>]
Indicates that the shares to be numerated should be special. Admin share, default shares, IPC$ share are examples of special shares.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-ThrottleLimit [<Int32>]
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.
Required? false
Position? named
Default value none
Accept pipeline input? false
Accept wildcard characters? false
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
INPUTS
System.String
OUTPUTS
Microsoft.Management.Infrastructure.CimInstance#ROOT/Microsoft/Windows/SMB/MSFT_SmbShare
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.
The MSFT_SmbShare object represents the SMB shares on the computer.
Example 1: Get SMB shares
PS C:\\>Get-SMBShare
Name ScopeName Path Description
---- --------- ---- -----------
ADMIN$ * C:\\Windows Remote Admin
C$ * C:\\ Default share
ClusterStorage$ Contoso-SO C:\\ClusterStorage Cluster Shared Volumes Def...
D$ * D:\\ Default share
F$ * F:\\ Default share
G$ * G:\\ Default share
H$ * H:\\ Default share
I$ Contoso-FS I:\\ Cluster Default Share
I$ * I:\\ Default share
IPC$ * Remote IPC
J$ Contoso-FS J:\\ Cluster Default Share
J$ * J:\\ Default share
K$ * K:\\ Default share
L$ * L:\\ Default share
M$ * M:\\ Default share
N$ * N:\\ Default share
VMS1 Contoso-FS I:\\VMS
VMS2 Contoso-FS J:\\VMS
VMS3 Contoso-SO C:\\ClusterStorage\\Volume1\\VMS
VMS4 Contoso-SO C:\\ClusterStorage\\Volume2\\VMS
VMS5 * D:\\VMS
This command retrieves the SMB shares on the computer.
Example 2: Get SMB shares on a specific computer
PS C:\\>Get-SmbShare -Name "VMS1"
Name ScopeName Path Description
---- --------- ---- -----------
VMS1 Contoso-FS I:\\VMS
This command retrieves the SMB shares on the computer named VMS1.
Example 3: Display information about SMB shares on a specific computer
PS C:\\>Get-SmbShare -Name "VMS1" | Format-List
Name : VMS1
ScopeName : Contoso-FS
Path : I:\\VMS
Description :
This command displays the information about the SMB shares on the computer named VMS1 as a formatted list.
Example 3: Display all properties about SMB shares on a specific computer
PS C:\\>Get-SmbShare -Name "VMS1" | Format-List -Property *
PresetPathAcl : System.Security.AccessControl.DirectorySecurity
ShareState : Online
AvailabilityType : Clustered
ShareType : FileSystemDirectory
FolderEnumerationMode : Unrestricted
CachingMode : Manual
CATimeout : 0
ConcurrentUserLimit : 0
ContinuouslyAvailable : True
CurrentUsers : 3
Description :
EncryptData : False
Name : VMS1
Path : I:\\VMS
Scoped : True
ScopeName : Contoso-FS
SecurityDescriptor : O:BAG:DUD:(A;;FA;;;S-1-5-21-219828122-4198910963-4161819395-500)(A;;FA;;;S-1-5-21-219828122-419
8910963-4161819395-1106)(A;;FA;;;S-1-5-21-219828122-4198910963-4161819395-1109)
ShadowCopy : False
Special : False
Temporary : False
Volume : \\\\?\\Volume{b02c4ba7-e6f1-11e1-93eb-0008a1c0ef0d}\\
PSComputerName :
CimClass : ROOT/Microsoft/Windows/SMB:MSFT_SmbShare
CimInstanceProperties : {AvailabilityType, CachingMode, CATimeout, ConcurrentUserLimit...}
CimSystemProperties : Microsoft.Management.Infrastructure.CimSystemProperties
This command displays all of the information about the SMB shares on the computer named VMS1 as a formatted list.
Example 5: Get shares on a computer that has scaled out availability
PS C:\\>Get-SmbShare | Where-Object -Property AvailabilityType -Eq ScaleOut
Name ScopeName Path Description
---- --------- ---- -----------
ClusterStorage$ Contoso-SO C:\\ClusterStorage Cluster Shared Volumes Def...
VMS3 Contoso-SO C:\\ClusterStorage\\Volume1\\VMS
VMS4 Contoso-SO C:\\ClusterStorage\\Volume2\\VMS
This command retrieves the SMB shares on the computer that has scaled out availability.
Example 6: Get shares that are connected to a specific server
PS C:\\>Get-SmbShare -ScopeName "Contoso-FS"
Name ScopeName Path Description
---- --------- ---- -----------
I$ Contoso-FS I:\\ Cluster Default Share
J$ Contoso-FS J:\\ Cluster Default Share
VMS1 Contoso-FS I:\\VMS
VMS2 Contoso-FS J:\\VMS
This command retrieves the SMB shares on the computer that are connected to the SMB server named Contoso-FS.
RELATED LINKS
New-SmbShare
Remove-SmbShare
Set-SmbShare
SYNOPSIS
Retrieves the SMB shares on the computer.
SYNTAX
Get-SmbShare [[-Name] <String[]>] [[-ScopeName] <String[]>] [-AvailabilityType <AvailabilityType[]>] [-CachingMode <CachingMode[]>] [-CaTimeout
<UInt32[]>] [-CimSession <CimSession[]>] [-ConcurrentUserLimit <UInt32[]>] [-ContinuouslyAvailable <Boolean[]>] [-EncryptData <Boolean[]>]
[-FolderEnumerationMode <FolderEnumerationMode[]>] [-IncludeHidden] [-Scoped <Boolean[]>] [-ShareState <ShareState[]>] [-SmbInstance {Default | CSV}]
[-Special <Boolean[]>] [-ThrottleLimit <Int32>] [<CommonParameters>]
DESCRIPTION
The Get-SmbShare cmdlet retrieves objects that represent the Server Message Block (SMB) shares being displayed by the computer.
PARAMETERS
-AvailabilityType [<AvailabilityType[]>]
Specifies the cluster type of the shares being enumerated.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-CachingMode [<CachingMode[]>]
Specifies the caching mode of the shares being enumerated.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-CaTimeout [<UInt32[]>]
Specifies the continuous availability time-out of the shares being enumerated.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-CimSession [<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.
Required? false
Position? named
Default value none
Accept pipeline input? false
Accept wildcard characters? false
-ConcurrentUserLimit [<UInt32[]>]
Specifies the concurrent user limit of the shares being enumerated.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-ContinuouslyAvailable [<Boolean[]>]
Indicates that the shares being enumerated should be continuously available.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-EncryptData [<Boolean[]>]
Indicates that the shares being enumerated should be encrypted.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-FolderEnumerationMode [<FolderEnumerationMode[]>]
Specifies the folder enumeration mode of the shares being enumerated.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-IncludeHidden [<SwitchParameter>]
Indicates that shares that are created and used internally are also enumerated.
Required? false
Position? named
Default value none
Accept pipeline input? false
Accept wildcard characters? false
-Name [<String[]>]
Specifies one or more SMB shares by share name.
Required? false
Position? 2
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-Scoped [<Boolean[]>]
Indicates that the shares to be numerated should be scoped.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-ScopeName [<String[]>]
Specifies the scope of the share by name.
Required? false
Position? 3
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-ShareState [<ShareState[]>]
Specifies the state of the shares being enumerated.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-SmbInstance [<Microsoft.PowerShell.Cmdletization.GeneratedTypes.SmbShare.SmbInstance>]
Specifies the input to this cmdlet. You can use this parameter, or you can pipe the input to this cmdlet.
Required? false
Position? named
Default value none
Accept pipeline input? true(ByPropertyName)
Accept wildcard characters? false
-Special [<Boolean[]>]
Indicates that the shares to be numerated should be special. Admin share, default shares, IPC$ share are examples of special shares.
Required? false
Position? named
Default value none
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? false
-ThrottleLimit [<Int32>]
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.
Required? false
Position? named
Default value none
Accept pipeline input? false
Accept wildcard characters? false
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).
INPUTS
System.String
OUTPUTS
Microsoft.Management.Infrastructure.CimInstance#ROOT/Microsoft/Windows/SMB/MSFT_SmbShare
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.
The MSFT_SmbShare object represents the SMB shares on the computer.
Example 1: Get SMB shares
PS C:\\>Get-SMBShare
Name ScopeName Path Description
---- --------- ---- -----------
ADMIN$ * C:\\Windows Remote Admin
C$ * C:\\ Default share
ClusterStorage$ Contoso-SO C:\\ClusterStorage Cluster Shared Volumes Def...
D$ * D:\\ Default share
F$ * F:\\ Default share
G$ * G:\\ Default share
H$ * H:\\ Default share
I$ Contoso-FS I:\\ Cluster Default Share
I$ * I:\\ Default share
IPC$ * Remote IPC
J$ Contoso-FS J:\\ Cluster Default Share
J$ * J:\\ Default share
K$ * K:\\ Default share
L$ * L:\\ Default share
M$ * M:\\ Default share
N$ * N:\\ Default share
VMS1 Contoso-FS I:\\VMS
VMS2 Contoso-FS J:\\VMS
VMS3 Contoso-SO C:\\ClusterStorage\\Volume1\\VMS
VMS4 Contoso-SO C:\\ClusterStorage\\Volume2\\VMS
VMS5 * D:\\VMS
This command retrieves the SMB shares on the computer.
Example 2: Get SMB shares on a specific computer
PS C:\\>Get-SmbShare -Name "VMS1"
Name ScopeName Path Description
---- --------- ---- -----------
VMS1 Contoso-FS I:\\VMS
This command retrieves the SMB shares on the computer named VMS1.
Example 3: Display information about SMB shares on a specific computer
PS C:\\>Get-SmbShare -Name "VMS1" | Format-List
Name : VMS1
ScopeName : Contoso-FS
Path : I:\\VMS
Description :
This command displays the information about the SMB shares on the computer named VMS1 as a formatted list.
Example 3: Display all properties about SMB shares on a specific computer
PS C:\\>Get-SmbShare -Name "VMS1" | Format-List -Property *
PresetPathAcl : System.Security.AccessControl.DirectorySecurity
ShareState : Online
AvailabilityType : Clustered
ShareType : FileSystemDirectory
FolderEnumerationMode : Unrestricted
CachingMode : Manual
CATimeout : 0
ConcurrentUserLimit : 0
ContinuouslyAvailable : True
CurrentUsers : 3
Description :
EncryptData : False
Name : VMS1
Path : I:\\VMS
Scoped : True
ScopeName : Contoso-FS
SecurityDescriptor : O:BAG:DUD:(A;;FA;;;S-1-5-21-219828122-4198910963-4161819395-500)(A;;FA;;;S-1-5-21-219828122-419
8910963-4161819395-1106)(A;;FA;;;S-1-5-21-219828122-4198910963-4161819395-1109)
ShadowCopy : False
Special : False
Temporary : False
Volume : \\\\?\\Volume{b02c4ba7-e6f1-11e1-93eb-0008a1c0ef0d}\\
PSComputerName :
CimClass : ROOT/Microsoft/Windows/SMB:MSFT_SmbShare
CimInstanceProperties : {AvailabilityType, CachingMode, CATimeout, ConcurrentUserLimit...}
CimSystemProperties : Microsoft.Management.Infrastructure.CimSystemProperties
This command displays all of the information about the SMB shares on the computer named VMS1 as a formatted list.
Example 5: Get shares on a computer that has scaled out availability
PS C:\\>Get-SmbShare | Where-Object -Property AvailabilityType -Eq ScaleOut
Name ScopeName Path Description
---- --------- ---- -----------
ClusterStorage$ Contoso-SO C:\\ClusterStorage Cluster Shared Volumes Def...
VMS3 Contoso-SO C:\\ClusterStorage\\Volume1\\VMS
VMS4 Contoso-SO C:\\ClusterStorage\\Volume2\\VMS
This command retrieves the SMB shares on the computer that has scaled out availability.
Example 6: Get shares that are connected to a specific server
PS C:\\>Get-SmbShare -ScopeName "Contoso-FS"
Name ScopeName Path Description
---- --------- ---- -----------
I$ Contoso-FS I:\\ Cluster Default Share
J$ Contoso-FS J:\\ Cluster Default Share
VMS1 Contoso-FS I:\\VMS
VMS2 Contoso-FS J:\\VMS
This command retrieves the SMB shares on the computer that are connected to the SMB server named Contoso-FS.
RELATED LINKS
New-SmbShare
Remove-SmbShare
Set-SmbShare