有人知道为什么ls -LiteralPath c:\data -Recurse -Include *.txt命令在Powershell 5.1和5.0上的工作原理不同吗?

我有一个包含文件的文件夹:

  • 数据
  • file1.txt
  • file2.txt
  • file1.txtfoo

  • 而且,如果我们在装有Powershell 5.0的计算机上运行上面列出的命令,那么它将为您提供前两个文件。但是,如果您在使用Powershell 5.1的计算机上运行相同的命令,则它将为您提供所有三个文件。

    为什么会这样呢?

    UPD:
    如果我们将-Include更改为filter,那么它在两台机器上都可以正常工作。
    如果我们用简单的路径字符串-LiteralPath替换ls c:\data -Recurse -Include *.txt,则同样如此:ojit_code也会在两台机器上正常工作。

    最佳答案

    This appears to be a bug with 5.1 that was resolved in 6.1.0-preview.2 .

    关于powershell - Powershell 5.0和5.1中的Get-ChildItem,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51517675/

    10-10 18:07
    查看更多