Get-ChildItem为Assembly.*.dll添加排除过滤器,但包括Assembly.Some.*.dll

Shu*_*oel 1 powershell get-childitem

我有一个要求,我想排除所有具有模式的程序集

Assembly.*.dll

但是想要包含所有具有模式的组件

Assembly.Some.*.dll

从同一个地方通过Get-ChildItem.

我想在一行脚本中实现此功能.

Mat*_*sen 5

您可以-orWhere-Object过滤器中使用运算符:

Get-ChildItem -Filter *.dll |Where-Object {
  $_.Name -like 'Assembly.Some.*.dll' -or $_.Name -notlike 'Assembly.*.dll'
}
Run Code Online (Sandbox Code Playgroud)

由于任何具有类似名称的程序集Assembly.Some.Namespace.dll在第一个条件下都会返回true,因此不会测试第二个条件