如何使用通配符在 Windows 命令行中搜索文件?
C:\Users\*\AppData\Local\*.txt
答案1
Windows PowerShell 可以轻松做到这一点。
Get-ChildItem C:\Users\*\AppData\Local\*.txt
如果要包含子文件夹:
Get-ChildItem C:\Users\*\AppData\Local\*.txt -recurse
关于隐藏(等等)文件,Powershellhelp Get-ChildItem
说:
默认情况下,Get-ChildItem 会获取非隐藏项目,但您可以使用 Directory、File、Hidden、ReadOnly 和 System 参数来仅获取具有这些属性的项目。要创建复杂的属性搜索,请使用 Attributes 参数。如果使用这些参数,Get-ChildItem 只会获取满足所有搜索条件的项目,就像参数由 AND 运算符连接一样。
答案2
任何适用于 Windows 的优秀 Unix shell 都可以执行此操作。
例如,这是我的汉密尔顿C壳执行您的示例(抱歉,没有匹配项)和其他几个确实产生匹配项的程序。...
通配符第三个示例中使用的匹配零个或多个目录级别,无论其余模式需要匹配什么。
你可以这样做赛格威 bash
。这里有几个不同之处,因为 Cygwin 遵循 Unix 惯例:路径通常用正斜杠输入,反斜杠是转义字符。由于 Unix 不理解驱动器字母,因此他们引入了一种/cydrive/c
表示法来指代C:
驱动器。与 Unix 一样,通配符区分大小写。虽然它支持您想要的通常的多目录级通配符,但它不包括...
I 添加到我的 shell 中。(相反,您可能会使用find
.)
答案3
在 cmd 中,导航到C:\Users
并运行
dir /s /b | findstr AppData\Local | findstr txt
说明:dir /s
递归列出所有文件,/b
显示完整路径,并在所有这些子文件中使用管道运算符搜索字符串“AppData\Local”和“txt”。