如何使用PowerShell递归搜索目录中的所有文件,包括隐藏目录中的隐藏文件?
Posted
技术标签:
【中文标题】如何使用PowerShell递归搜索目录中的所有文件,包括隐藏目录中的隐藏文件?【英文标题】:How to recursively search a directory for all files including hidden files in hidden directories, with PowerShell? 【发布时间】:2014-12-13 01:17:03 【问题描述】:要递归搜索隐藏文件,我使用的是:
gci -Path C:\ -Filter part_of_filename* -Recurse -Force | where $_.Attributes -match "Hidden"
输出显示了许多与此完全相同的错误(取决于路径):
Get-ChildItem : 访问路径“C:\Documents and Settings”是 否认。在 C:\Users\USERNAME\Documents\powershell\searchdisk.ps1:10 字符:5 + gci
我需要一个 PowerShell 命令,它可以递归搜索任何目录,包括隐藏目录,并向我显示所有文件,包括名为 part_of_filename* 的隐藏文件(对于本示例)
我以管理员身份使用 PowerShell ISE 运行了该命令。它不会在目录中搜索
C:\Windows\System32\LogFiles\WMI\RtBackup
【问题讨论】:
这肯定需要以提升的权限运行 问题是Documents and settings不是一个目录,而是一个连接点。一些让程序相信目录仍然存在的 NTFS 技巧,而它实际上是用户的快捷方式。这是关于该主题的 SO 问题:***.com/questions/2311105/… 【参考方案1】:你做得对。只需在提升的控制台中运行它并删除过滤器即可。如果您不关心权限错误,请附加-ErrorAction SilentlyContinue
:
Get-ChildItem -Path C:\ -Filter lush* -Recurse -Force `
-ErrorAction SilentlyContinue
Directory: C:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
-arhs 25.09.2013 12:16 1208 lush.asx
lush.asx
具有 ReadOnly、Hidden 和 System 属性。
您可能还想通过管道发送到| select Name, Length, Directory
以摆脱不幸的Directory: C:\
行。如果您想要没有文件名的完整路径,还有一个DirectoryName
。
【讨论】:
以上是关于如何使用PowerShell递归搜索目录中的所有文件,包括隐藏目录中的隐藏文件?的主要内容,如果未能解决你的问题,请参考以下文章
如何递归获取PowerShell中的所有文件和文件夹的大小,自定义输出
powershell Powershell行搜索给定模式的目录中的所有texxt文件。返回路径和文本行