我们如何在 WSL 上使用递归 ls?
How can we use recursive ls on WSL?
在执行 ls -R *.html
时,它不会列出所有文件 [目录 foo 内的文件],而在 pwsh 上同样可以正常工作。
谢谢
... where as same thing works fine on pwsh
它是,它不是 - PowerShell 中的 ls
是别名,指向 Get-ChildItem
命令,Get-ChildItem
应用 *.html
字符串参数与 ls
相比,-R[ecurse]
标志的顺序相反 - 它递归搜索所有文件,然后应用过滤器,而 ls
尝试将 *.html
解析为一个或多个文件系统本地目录中的节点,然后递归遍历任何与名称匹配的子目录。
在 WSL/Linux 中,您可能希望改用 find
:
find . -name "*html"
在执行 ls -R *.html
时,它不会列出所有文件 [目录 foo 内的文件],而在 pwsh 上同样可以正常工作。
谢谢
... where as same thing works fine on pwsh
它是,它不是 - PowerShell 中的 ls
是别名,指向 Get-ChildItem
命令,Get-ChildItem
应用 *.html
字符串参数与 ls
相比,-R[ecurse]
标志的顺序相反 - 它递归搜索所有文件,然后应用过滤器,而 ls
尝试将 *.html
解析为一个或多个文件系统本地目录中的节点,然后递归遍历任何与名称匹配的子目录。
在 WSL/Linux 中,您可能希望改用 find
:
find . -name "*html"