如何查找来自另一台计算机的文件

如何查找来自另一台计算机的文件

在文件的属性对话框中,您知道该消息该文件来自另一台计算机,可能被阻止...

我想要一个 Windows 7 搜索查询来查找来自其他计算机的文件以及来自此计算机的文件。例如查找代码片段javascript onclick type:.js date: earlier this year <file made by me>。除非我以某种方式排除与查询匹配的各种程序文件,否则我会得到太多不相关的结果。

我无法搜索,author:因为它不是一个好的代理(文件要么没有元数据,要么我的作者姓名多年来并不一致)。

答案1

您可以使用 PowerShell 来实现这一点。来自互联网的文件具有一个名为 Zone.Identifier 的备用数据流。从 PowerShell 3.0 开始,Get-Item支持-Stream允许查看 ADS 的参数。如果您运行的是 Windows 8,则应该已经内置了功能强大的 PowerShell 版本。如果您使用的是 Windows 7,则需要从 Microsoft 网站下载更新。最新版本目前是 PowerShell 4.0。

一旦安装了功能强大的 PowerShell 版本,以下命令将列出当前文件夹(及其子文件夹)中具有 Zone.Identifier ADS 的所有文件:

Get-ChildItem -Recurse | Get-Item -Stream Zone.Identifier -ErrorAction SilentlyContinue | Select-Object FileName

扩展并附有评论:

# Get all items in the current folder and its subfolders.
Get-ChildItem -Recurse|

# Get the Zone.Identifier ADS for each item. Suppress error output.
# Errors are suppressed here because otherwise the screen will fill with non-critical errors for all the files that *don't* have the Zone.Identifier ADS - i.e.: Files that aren't from the Internet.
Get-Item -Stream Zone.Identifier -ErrorAction SilentlyContinue |

# Display only the FileName property of each object returned.
Select-Object FileName

“高尔夫”版本:

ls -Rec|gi -S Zone.Identifier -ErrorA SilentlyContinue|select FileName
  • lsgi和分别是、和select的内置别名。Get-ChildItemGet-ItemSelect-Object
  • -Recurse、、-Stream-ErrorAction被截断为唯一标识参数名称所需的最小长度。

相关内容