使用Powershell在所有驱动器中查找文件


8

我知道如何使用dir / gci搜索文件,但这仅适用于一个驱动器AFAIK。

  • 有没有办法搜索计算机上的所有驱动器?
  • 有没有一种方法无需手动枚举然后遍历驱动器?
  • 有没有一种方法可以访问Windows中已经可用的搜索索引/服务,从而加快搜索速度?

Answers:


3

这将按目录降序列出所有可用驱动器上的所有ZIP文件:

get-psdrive -p "FileSystem" `
| % {write-host -f Green "Searching " $_.Root;get-childitem $_.Root -include *.ZIP -r `
| sort-object Length -descending}

或搜索驱动器/共享的指定列表(例如C:,D:和\ SERVER1 \ SHARE1 ...)

$paths="C:\","D:\","\\SERVER1\SHARE1" `
| % {write-host -f Green "Searching " $_;get-childitem $_ -include *.ZIP -r `
| sort-object Length -descending}

2
$drive = get-psdrive
foreach ($a in $drive) {gci}

还不错...但是我想不出一种方法,而不必递归所有这样的驱动器。

有关搜索索引的信息,请参见此页面

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.