2
我正在使用Powershell中的SCSM,但遇到if語句的問題。
我有一個函數根據作爲變量傳遞給函數的條件收集數據。 實施例:
$JMLs1 = collectTickets -crit $JMLCriteria1
collectTickets
是函數,$JMLCriteria1
是傳遞的標準。
這是collectTickets
功能:
function collectTickets
{
param (
[parameter (Mandatory=$true)]
$crit
)
$fullDate = Get-Date
if ($fullDate.DayOfWeek -eq 'Monday')
{
$olderThan = $fullDate.AddDays(-4)
}
elseif ($fullDate.DayOfWeek -eq 'Tuesday')
{
$olderThan = $fullDate.AddDays(-4)
}
else
{
$olderThan = $fullDate.AddDays(-2)
}
if ($crit -like '$JML*')
{
$data = Get-SCSMObject -Criteria $crit | select 'Id', 'Title', 'LastModified', 'Priority'
}
else
{
$data = Get-SCSMObject -Criteria $crit | Where-Object {($_.LastModified -lt $olderThan)} | select 'Id', 'Title', 'LastModified', 'Priority'
}
return $data
}
我遇到的問題是與第二if語句,該if ($crit -like '$JML*')
- 我不知道,如果我們可以使用通配符這樣對變量或者如果語法不正確。
只是爲了闡明將會有多個$JML
標準變量以及多個其他標準變量,但它只是我想要區別對待的$JML
標準變量。