New-CMDetectionClauseDirectory

Crie uma cláusula de método de deteção para um diretório de sistema de ficheiros.

Sintaxe

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>]

Description

Utilize este cmdlet para criar uma cláusula num método de deteção numa aplicação. Esta cláusula é uma regra para uma pasta do sistema de ficheiros que indica a presença de uma aplicação.

Para detetar um ficheiro em vez de uma pasta, utilize o cmdlet New-CMDetectionClauseFile .

Depois de utilizar este cmdlet, utilize um dos cmdlets Add- ou Set- para tipos de implementação. Transmita este objeto de cláusula de deteção para os parâmetros AddDetectionClause ou RemoveDetectionClause .

Para agrupar cláusulas de deteção, utilize o parâmetro GroupDetectionClauses nos cmdlets do tipo de implementação.

Observação

Execute cmdlets do Configuration Manager a partir da unidade do site do Configuration Manager, por exemplo PS XYZ:\>. Para obter mais informações, veja Introdução.

Exemplos

Exemplo 1: adicionar um método de deteção de existência

Este exemplo adiciona uma cláusula de deteção que requer a existência de um ID de produto específico e um nome de diretório.

$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)

Exemplo 2: Adicionar um método de deteção de avaliação de regras

Este exemplo adiciona uma cláusula de deteção baseada em regras para verificar se a pasta foi modificada após 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

Parâmetros

-DirectoryName

Especifique o nome da pasta que indica a presença da aplicação. Utilize o parâmetro Path para especificar o caminho para esta pasta.

Por exemplo, a consola do Configuration Manager é instalada por predefinição para C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole. Para criar uma regra para esta pasta, defina este parâmetro como AdminConsole e o parâmetro Path como %ProgramFiles(x86)%\Microsoft Endpoint Manager.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-DisableWildcardHandling

Este parâmetro trata os carateres universais como valores de carateres literais. Não pode combiná-lo com ForceWildcardHandling.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Existence

Quando adiciona este parâmetro, a pasta tem de existir no sistema de destino para indicar a presença desta aplicação.

Em vez de existir apenas, para avaliar uma regra relativamente às propriedades desta pasta, utilize o parâmetro Value .

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ExpectedValue

Quando adicionar o parâmetro Value , utilize ExpectedValue com PropertyType e ExpressionOperator. Quando utiliza estes parâmetros, a pasta tem de satisfazer a regra para indicar a presença desta aplicação. Este parâmetro ExpectedValue especifica o valor a comparar com o sistema de ficheiros.

O parâmetro PropertyType para esta cláusula só aceita a data em que a pasta foi criada ou modificada, pelo que este valor é uma cadeia com um datetime válido. Por exemplo, "2020-11-30T08:00:00Z".

Tipo:String[]
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ExpressionOperator

Quando adicionar o parâmetro Value , utilize ExpressionOperator com PropertyType e ExpectedValue. Quando utiliza estes parâmetros, a pasta tem de satisfazer a regra para indicar a presença desta aplicação. Este parâmetro ExpressionOperator especifica o operador para comparar o valor do sistema de ficheiros com o valor esperado.

A partir da versão 2010, o tipo de parâmetro mudou de RuleExpressionOperator para FileFolderRuleExpressionOperator.

Tipo:FileFolderRuleExpressionOperator
Valores aceitos:IsEquals, NotEquals, GreaterThan, LessThan, Between, GreaterEquals, LessEquals, OneOf, NoneOf
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ForceWildcardHandling

Este parâmetro processa carateres universais e pode levar a um comportamento inesperado (não recomendado). Não pode combiná-lo com DisableWildcardHandling.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Is64Bit

Adicione este parâmetro para indicar que esta pasta está associada a uma aplicação de 32 bits em sistemas de 64 bits.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Path

Especifique o caminho no sistema de ficheiros para a pasta que indica a presença da aplicação. Utilize o parâmetro DirectoryName para especificar o nome da pasta.

Por exemplo, a consola do Configuration Manager é instalada por predefinição para C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole. Para criar uma regra para esta pasta, defina este parâmetro como %ProgramFiles(x86)%\Microsoft Endpoint Manager e o parâmetro DirectoryName como AdminConsole.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-PropertyType

Quando adicionar o parâmetro Value , utilize PropertyType com ExpressionOperator e ExpectedValue. Quando utiliza estes parâmetros, a pasta tem de satisfazer a regra para indicar a presença desta aplicação. Este parâmetro PropertyType especifica a propriedade da pasta a avaliar.

Tipo:FileFolderProperty
Valores aceitos:DateCreated, DateModified
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Value

Quando adiciona o parâmetro Valor , a pasta tem de satisfazer a regra para indicar a presença desta aplicação. Utilize este parâmetro com os seguintes parâmetros: ExpectedValue, ExpressionOperator e PropertyType.

Em vez de avaliar uma regra, para verificar se a pasta existe, utilize o parâmetro Existência .

Tipo:SwitchParameter
Aliases:ValueRule
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

None

Saídas

System.Object