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>]
The Get-SmbShare cmdlet retrieves objects that represent the Server Message Block (SMB) shares being displayed by the computer.
-AvailabilityType [<AvailabilityType[]>]
Specifies the cluster type of the shares being enumerated.
-CachingMode [<CachingMode[]>]
Specifies the caching mode of the shares being enumerated.
-CaTimeout [<UInt32[]>]
Specifies the continuous availability time-out of the shares being enumerated.
-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.
-ConcurrentUserLimit [<UInt32[]>]
Specifies the concurrent user limit of the shares being enumerated.
-ContinuouslyAvailable [<Boolean[]>]
Indicates that the shares being enumerated should be continuously available.
-EncryptData [<Boolean[]>]
Indicates that the shares being enumerated should be encrypted.
-FolderEnumerationMode [<FolderEnumerationMode[]>]
Specifies the folder enumeration mode of the shares being enumerated.
-IncludeHidden [<SwitchParameter>]
Indicates that shares that are created and used internally are also enumerated.
-Name [<String[]>]
Specifies one or more SMB shares by share name.
-Scoped [<Boolean[]>]
Indicates that the shares to be numerated should be scoped.
-ScopeName [<String[]>]
Specifies the scope of the share by name.
-ShareState [<ShareState[]>]
Specifies the state of the shares being enumerated.
-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.
-Special [<Boolean[]>]
Indicates that the shares to be numerated should be special. Admin share, default shares, IPC$ share are examples of special shares.
-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 PowerShellr 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.
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,ErrorAction, ErrorVariable, WarningAction, WarningVariable,OutBuffer, PipelineVariable, and OutVariable.
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.
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.
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.
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.
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.
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.
This work is licensed under a Creative Commons Attribution 4.0 International. It is attributed to Microsoft Corporation and can be found here.
PowerShell Commands