为什么其中任何一个都会返回三个项目:
gci C:\tools\* -filter b*.jar -recurse |select fullname
gci C:\tools\b* -filter b*.jar -recurse |select fullname
gci C:\tools\briss-* -filter b*.jar -recurse |select fullname
gci C:\tools\briss-2* -filter b*.jar -recurse |select fullname
gci C:\tools\briss-2.* -filter b*.jar -recurse |select fullname
gci C:\tools\briss-2.0* -filter b*.jar -recurse |select fullname
FullName
--------
C:\tools\Briss-2.0\lib\bcmail-jdk15-1.46.jar
C:\tools\Briss-2.0\lib\bcprov-jdk15-1.46.jar
C:\tools\Briss-2.0\lib\Briss-2.0.jar
但其中任何一个都只能返回一个:
gci C:\tools\br* -filter b*.jar -recurse | select fullname
gci C:\tools\bri* -filter b*.jar -recurse | select fullname
gci C:\tools\bris* -filter b*.jar -recurse | select fullname
gci C:\tools\briss* -filter b*.jar -recurse | select fullname
FullName
--------
C:\tools\Briss-2.0\lib\Briss-2.0.jar
我以为我知道一些 powershell,但这没有意义。
编辑
我承认我有点自负:我在上面粘贴时删除了一段路径,以使其更短。我认为这样做没有什么区别。以下是实际效果的屏幕截图:
注意:我没有重新输入第一个 gci 命令,只是重新调用了它并在路径中添加了“r”。此外,由于我使用了制表符补全,因此路径没有输入错误。
我正在测试一些要包含在脚本中的东西,但这不是脚本的一部分。我在 Win11 中注意到了这一点,但我在干净的 Win10 VM 中重复了这一点。如果您使用 Chocolatey 并安装 Briss,您应该会得到完全相同的文件夹结构来自己测试。