Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Search powershell是否搜索用户创建的文档?_Search_Powershell - Fatal编程技术网

Search powershell是否搜索用户创建的文档?

Search powershell是否搜索用户创建的文档?,search,powershell,Search,Powershell,我可以搜索驱动器以显示由特定用户创建的所有文档吗?我认为powershell是一条路…但也许另一种方法是可能的 基本上,我想搜索一个驱动器,找到所有的*.doc或*.docx文件,并访问word属性以查看谁创建了文件(作者) 在这种情况下,您需要使用COM对象Word.Application打开Word本身的所有Word文档。然后可以使用对象上的集合查看文档的元数据。作者的名字,如果存在的话,将在该集合中 但是,这需要一段时间,因此您可以只查看文件系统ACL来确定是谁创建了该文件?但这只告诉您创

我可以搜索驱动器以显示由特定用户创建的所有文档吗?我认为powershell是一条路…但也许另一种方法是可能的


基本上,我想搜索一个驱动器,找到所有的*.doc或*.docx文件,并访问word属性以查看谁创建了文件(作者)

在这种情况下,您需要使用COM对象
Word.Application
打开Word本身的所有Word文档。然后可以使用对象上的集合查看文档的元数据。作者的名字,如果存在的话,将在该集合中

但是,这需要一段时间,因此您可以只查看文件系统ACL来确定是谁创建了该文件?但这只告诉您创建文件的用户,而不是创建文档的人


另一种选择可能是在Powershell中使用Windows搜索。显然,您可以将其与OLE DB提供程序一起使用。我认为Windows Search能够从Word文档中查询作者信息。

我不能从powershell(或直接从c#)中使用System.IO.FileInfo查看文件夹中的文件属性吗?您会从中读取什么?尽管如此,对于支持它们的每种文件格式,author等元数据的指定都是不同的。这些不是文件系统元数据。因此,在这里使用FileInfo(这是Powershell通过Get ChildItem提供给您的信息)对您没有帮助。除非你真的想使用创建者的用户名,而不是文档中指定的作者名。这一点很好。看起来是解决办法,但我无法让它发挥作用