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

Get-ChildItem Adding a Exclude filter for Assembly.*.dll but include Assembly.Some.*.dll

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

Assembly.*.dll

但想要包括所有具有模式

的程序集
Assembly.Some.*.dll

从同一位置到 Get-ChildItem

我想在一行脚本中实现这个功能。

您可以在 Where-Object 过滤器中使用 -or 运算符:

Get-ChildItem -Filter *.dll |Where-Object {
  $_.Name -like 'Assembly.Some.*.dll' -or $_.Name -notlike 'Assembly.*.dll'
}

由于任何名称如 Assembly.Some.Namespace.dll 的程序集在第一个条件下已经 return 为真,因此不会测试第二个条件