Public/Remove-TsmFilespace.ps1
<#
.Synopsis Removes one or more TSM filespaces. .DESCRIPTION This function removes filespaces from TSM. The default server is the connection set in your opt file. You can also choose which TSM server you are querying. .EXAMPLE Get-TsmFilespace DOMAIN SCHEDULE NODENAME .EXAMPLE Get-TsmFilespace -PolicyDomain DOMAIN -ScheduleName SCHEDULE -NodeName NODENAME .EXAMPLE Get-TsmFilespace DOMAIN SCHEDULE FS* | Remove-TsmFilespace #> function Remove-TsmFilespace { [CmdletBinding(SupportsShouldProcess,ConfirmImpact='High')] Param ( [Parameter(Mandatory=$true, ValueFromPipelineByPropertyName=$true, Position=0)] [String]$NodeName, [Parameter(Mandatory=$false, ValueFromPipelineByPropertyName=$true, Position=1)] [String]$FilespaceName, [String]$UserName, [String]$Password, [String]$TCPServerAddress, [int]$TCPPort ) Begin { } Process { if($FilespaceName) { $TsmCommand = "delete filespace $NodeName $FilespaceName nametype=unicode" } else { $TsmCommand = "delete filespace $NodeName * nametype=unicode" } try{ if ($PSCmdlet.ShouldProcess($NodeName)) { Invoke-TsmCommand -Command $TsmCommand @psboundparameters | Out-Null } else { Write-Host "The following TSM command will run:" Write-Host $TsmCommand } } catch { Write-Error $_ } } End { } } |