Public/Get-TsmProcess.ps1
<#
.Synopsis Gets one to many TSM Processs. .DESCRIPTION This cmdlet gets the TSM sessions that exist on a server. The default server is the connection set in your opt file. You can also choose which TSM server you are querying. .EXAMPLE Get-TsmProcess 2356 .EXAMPLE Get-TsmProcess #> function Get-TsmProcess { [OutputType('System.Management.Automation.PSCustomObject')] Param ( [Parameter(Position=0)] [String]$ProcessNumber, [Parameter(Position=1)] [String]$UserName, [Parameter(Position=2)] [String]$Password, [Parameter(Position=3)] [String]$TCPServerAddress, [Parameter(Position=4)] [int]$TCPPort ) Begin { } Process { #We only want to set the Process to query, if it were passed $TsmProcessCommand = "query Process" If($ProcessNumber) { $ProcessNumber = $ProcessNumber -replace ',','' $TsmProcessCommand = $TsmProcessCommand + " $ProcessNumber" } try{ $executeTSM = Invoke-TsmCommand -Command $TsmProcessCommand @psboundparameters $TsmProcesss = ConvertFrom-Csv -Delimiter "`t" -InputObject $executeTSM -Header "ProcessNumber", "ProcessDesc", "Process Status" return $TsmProcesss } catch { Write-Error $_ } } End { } } |