Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.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
String Powershell选择字符串,然后获取返回文件的数据_String_Search_Powershell_Powershell 2.0 - Fatal编程技术网

String Powershell选择字符串,然后获取返回文件的数据

String Powershell选择字符串,然后获取返回文件的数据,string,search,powershell,powershell-2.0,String,Search,Powershell,Powershell 2.0,我承认我今天很累,但即使这样,也不能成为我目前正在用Powershell为自己制造噩梦的借口 基本上,其目的是在目录中搜索包含在某些word文档中的字符串。然后我需要返回文件名、创建日期和上次写入时间。我想这很容易,但在某些阶段,我已经偏离了轨道,仍然在攀登 到目前为止,我所做的是运行搜索并将path变量导出到一个文本文件中,从而为我提供包含字符串的文件的路径。然后,我尝试使用foreach循环来加载文件的内容,并对通过管道传输到Select对象名CreationTime和LastWriteTi

我承认我今天很累,但即使这样,也不能成为我目前正在用Powershell为自己制造噩梦的借口

基本上,其目的是在目录中搜索包含在某些word文档中的字符串。然后我需要返回文件名、创建日期和上次写入时间。我想这很容易,但在某些阶段,我已经偏离了轨道,仍然在攀登

到目前为止,我所做的是运行搜索并将path变量导出到一个文本文件中,从而为我提供包含字符串的文件的路径。然后,我尝试使用foreach循环来加载文件的内容,并对通过管道传输到Select对象名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}
你就快到了:

$files = (Get-ChildItem  -Recurse -Include *.doc | Select-String "Shiba"| select-object path )
$k = foreach($i in $files){ (gci $i.Path | select-object Name,CreationTime,LastWriteTime) } 
$k > C:\pst\SHIBADates.txt 

我是否正确地认为是因为我在命令中没有使用$I.Path,所以它从目录中带回了所有文件?而且,如果将文件放在同一行上,则文件中的格式也不是很好,至少对我来说是这样