New-CMTSStepConditionFile
为任务序列步骤创建 文件属性 条件。
语法
New-CMTSStepConditionFile
[-FileDateTimeOperator <VariableOperatorType>]
-FilePath <String>
[-FileTimestamp <DateTime>]
[-FileVersion <String>]
[-VersionOperator <VariableOperatorType>]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
说明
使用此 cmdlet 为任务序列步骤创建 文件属性 条件对象。 然后,将 New-CMTSStep* 或 Set-CMTSStep* cmdlet 之一与 Condition 或 AddCondition 参数结合使用 。 例如 ,Set-CMTSStepApplyDataImage。
有关详细信息,请参阅 使用任务序列编辑器:条件。
可以使用此条件执行三种类型的检查:
- 若要检查文件是否存在,请使用所需的 FilePath 参数。
- 若要同时检查文件版本,请使用 FileVersion 和 VersionOperator 参数。
- 若要同时检查文件时间戳,请使用 FileTimestamp 和 FileDateTimeOperator 参数。
注意
从 Configuration Manager 站点驱动器运行 Configuration Manager cmdlet,例如 PS XYZ:\>
。 有关详细信息,请参阅 入门。
示例
示例 1
此示例检查其中一个 Configuration Manager PowerShell 模块帮助文件是否存在和时间戳。 它为文件创建文件条件对象,其时间戳大于 2021 年 8 月 2 日。
然后,它使用 Set-CMTSStepRunPowerShellScript cmdlet 将此条件对象添加到默认 OS 部署任务序列的“运行 PowerShell 脚本”步骤。
$file = "C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\en-US\AdminUI.PS.dll-Help.xml"
$datetime = Get-Date ("August 2, 2021")
$condition = New-CMTSStepConditionFile -FilePath $file -FileTimestamp $datetime -FileDateTimeOperator Greater
$tsNameOsd = "Default OS deployment"
$tsStepNameRunPwsh = "Run PowerShell Script"
Set-CMTSStepRunPowerShellScript -TaskSequenceName $tsNameOsd -StepName $tsStepNameRunPwsh -AddCondition $condition
此示例脚本在步骤中创建以下条件:
File C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\en-US\AdminUI.PS.dll-Help.xml exists and timestamp greater than "8/1/2021 16:00:00"
参数
-Confirm
提示你在运行 cmdlet 之前进行确认。
类型: | SwitchParameter |
别名: | cf |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-DisableWildcardHandling
此参数将通配符视为文本字符值。 不能将其与 ForceWildcardHandling 组合使用。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-FileDateTimeOperator
使用 FileTimestamp 参数时,使用此参数指定任务序列的 运算符来评估文件的时间戳。
类型: | VariableOperatorType |
接受的值: | Equals, NotEquals, Greater, GreaterEqual, Less, LessEqual |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-FilePath
指定完整路径,包括此条件的文件的名称。
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-FileTimestamp
若要计算文件的时间戳,请使用此参数指定 datetime 对象。 若要获取此对象,请使用内置的 Get-Date cmdlet。
然后使用 FileDateTimeOperator 参数设置计算运算符。
类型: | DateTime |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-FileVersion
若要评估文件的版本,请使用此参数指定版本字符串。
然后使用 VersionOperator 参数设置计算运算符。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ForceWildcardHandling
此参数处理通配符,并可能导致意外行为, (不建议) 。 不能将其与 DisableWildcardHandling 组合使用。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-VersionOperator
使用 FileVersion 参数时,使用此参数指定任务序列的 运算符来评估文件的版本。
类型: | VariableOperatorType |
接受的值: | Equals, NotEquals, Greater, GreaterEqual, Less, LessEqual |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-WhatIf
显示在 cmdlet 运行时发生的情况。 cmdlet 不会运行。
类型: | SwitchParameter |
别名: | wi |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
输入
None
输出
IResultObject
备注
有关此返回对象及其属性的详细信息,请参阅 SMS_TaskSequence_FileConditionExpression服务器 WMI 类。