Condividi tramite


New-CMDetectionClauseDirectory

Creare una clausola del metodo di rilevamento per una directory del file system.

Sintassi

New-CMDetectionClauseDirectory
   -DirectoryName <String>
   -PropertyType <FileFolderProperty>
   -ExpectedValue <String[]>
   -ExpressionOperator <FileFolderRuleExpressionOperator>
   [-Is64Bit]
   -Path <String>
   [-Value]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]
New-CMDetectionClauseDirectory
   -DirectoryName <String>
   [-Is64Bit]
   -Path <String>
   [-Existence]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]

Descrizione

Usare questo cmdlet per creare una clausola in un metodo di rilevamento in un'applicazione. Questa clausola è una regola per una cartella del file system che indica la presenza di un'applicazione.

Per rilevare un file anziché una cartella, usare il cmdlet New-CMDetectionClauseFile .

Dopo aver usato questo cmdlet, usare uno dei cmdlet Add- o Set- per i tipi di distribuzione. Passare questo oggetto clausola di rilevamento ai parametri AddDetectionClause o RemoveDetectionClause .

Per raggruppare le clausole di rilevamento, usare il parametro GroupDetectionClauses nei cmdlet del tipo di distribuzione.

Nota

Eseguire i cmdlet di Configuration Manager dall'unità del sito di Configuration Manager, ad esempio PS XYZ:\>. Per altre informazioni, vedere Introduzione.

Esempio

Esempio 1: Aggiungere un metodo di rilevamento dell'esistenza

In questo esempio viene aggiunta una clausola di rilevamento che richiede l'esistenza di un ID prodotto e di un nome di directory specifici.

$app = Get-CMApplication -ApplicationName "CentralApp"
$guid = "9900a338-484b-4a18-884e-bce87654ce1b"
$clause1 = New-CMDetectionClauseWindowsInstaller -ProductCode $guid -Value -ExpressionOperator IsEquals -ExpectedValue "1.1.1.1"
$clause2 = New-CMDetectionClauseDirectory -DirectoryName "mymsi" -Path "C:\" -Existence

$app | Add-CMMsiDeploymentType -ContentLocation "\\myserver\mypath\mymsi.msi" -Force -AddDetectionClause ($clause1, $clause2)

Esempio 2: Aggiungere un metodo di rilevamento della valutazione delle regole

In questo esempio viene aggiunta una clausola di rilevamento basata su regole per verificare che la cartella sia stata modificata dopo il 30/12/2020.

$clause1 = New-CMDetectionClauseDirectory -DirectoryName "AdminConsole" -Path "%ProgramFiles(x86)%\Microsoft Endpoint Manager" -Value -PropertyType DateCreated -ExpressionOperator GreaterThan -ExpectedValue "2020-11-30T08:00:00Z"

Set-CMScriptDeploymentType -ApplicationName "Configuration Manager console" -DeploymentTypeName "Install" -AddDetectionClause $clause1

Parametri

-DirectoryName

Specificare il nome della cartella che indica la presenza dell'applicazione. Utilizzare il parametro Path per specificare il percorso di questa cartella.

Ad esempio, la console di Configuration Manager viene installata per impostazione predefinita in C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole. Per creare una regola per questa cartella, impostare questo parametro su AdminConsole e il parametro Path su %ProgramFiles(x86)%\Microsoft Endpoint Manager.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-DisableWildcardHandling

Questo parametro considera i caratteri jolly come valori letterali. Non è possibile combinarlo con ForceWildcardHandling.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Existence

Quando si aggiunge questo parametro, la cartella deve esistere nel sistema di destinazione per indicare la presenza di questa applicazione.

Invece della sola esistenza, per valutare una regola per le proprietà di questa cartella, usare il parametro Value .

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ExpectedValue

Quando si aggiunge il parametro Value , usare ExpectedValue con PropertyType e ExpressionOperator. Quando si usano questi parametri, la cartella deve soddisfare la regola per indicare la presenza di questa applicazione. Questo parametro ExpectedValue specifica il valore da confrontare con il file system.

Il parametro PropertyType per questa clausola accetta solo la data di creazione o modifica della cartella, quindi questo valore è una stringa con un valore datetime valido. Ad esempio, "2020-11-30T08:00:00Z".

Tipo:String[]
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ExpressionOperator

Quando si aggiunge il parametro Value , usare ExpressionOperator con PropertyType e ExpectedValue. Quando si usano questi parametri, la cartella deve soddisfare la regola per indicare la presenza di questa applicazione. Questo parametro ExpressionOperator specifica l'operatore per confrontare il valore del file system con il valore previsto.

A partire dalla versione 2010, il tipo di parametro è cambiato da RuleExpressionOperator a FileFolderRuleExpressionOperator.

Tipo:FileFolderRuleExpressionOperator
Valori accettati:IsEquals, NotEquals, GreaterThan, LessThan, Between, GreaterEquals, LessEquals, OneOf, NoneOf
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ForceWildcardHandling

Questo parametro elabora caratteri jolly e può causare un comportamento imprevisto (non consigliato). Non è possibile combinarlo con DisableWildcardHandling.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Is64Bit

Aggiungere questo parametro per indicare che questa cartella è associata a un'applicazione a 32 bit nei sistemi a 64 bit.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Path

Specificare il percorso nel file system della cartella che indica la presenza dell'applicazione. Utilizzare il parametro DirectoryName per specificare il nome della cartella.

Ad esempio, la console di Configuration Manager viene installata per impostazione predefinita in C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole. Per creare una regola per questa cartella, impostare questo parametro su %ProgramFiles(x86)%\Microsoft Endpoint Manager e il parametro DirectoryName su AdminConsole.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-PropertyType

Quando si aggiunge il parametro Value , usare PropertyType con ExpressionOperator e ExpectedValue. Quando si usano questi parametri, la cartella deve soddisfare la regola per indicare la presenza di questa applicazione. Questo parametro PropertyType specifica la proprietà folder da valutare.

Tipo:FileFolderProperty
Valori accettati:DateCreated, DateModified
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Value

Quando si aggiunge il parametro Value , la cartella deve soddisfare la regola per indicare la presenza di questa applicazione. Usare questo parametro con i parametri seguenti: ExpectedValue, ExpressionOperator e PropertyType.

Invece di valutare una regola, per verificare solo che la cartella esista, usare il parametro Existence .

Tipo:SwitchParameter
Alias:ValueRule
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

Input

None

Output

System.Object