【发布时间】:2012-02-25 02:51:46
【问题描述】:
我承认我今天很累,但这也不能成为我目前使用 Powershell 为自己制造的噩梦的借口。
基本上,目的是在目录中搜索包含在某些 word 文档中的字符串。然后我需要返回文件名、创建日期和最后一次写入时间。我想很容易,但在某些阶段我已经偏离轨道并且仍在攀爬。
到目前为止,我所做的是运行搜索并将路径变量导出到一个文本文件,为我提供包含该字符串的文件的路径。然后,我尝试使用 foreach 循环加载文件的内容,并针对通过管道传输到 Select-Object Name、CreationTime、LastWriteTime 的每个条目运行 Get-ChildItem。我终于把它变成了一个文本文件。但是,它现在似乎正在为目录中的每个文件重新提供信息,而不仅仅是那些包含我正在搜索的字符串的信息。我有一种感觉,因为我倾向于将这些事情复杂化。非常感谢任何帮助。
Get-ChildItem -Recurse -Include *.doc | Select-String "Shiba" | select-object path > C:\TRCALM\shibapath.txt
$files = get-content C:\TRCALM\shibapath.txt
foreach($i in $files){gci $i | select-object Name,CreationTime,LastWriteTime > C:\TRCALM\SHIBADates.txt}
【问题讨论】:
标签: string search powershell powershell-2.0