#powershell #search #.doc
#powershell #Поиск #.doc
Вопрос:
Я только что приступил к новой работе, и мы пишем отчеты для клиентов, которые мне полезно прочитать, чтобы освоиться. Я пытался использовать PowerShell для передачи заголовков в текстовый файл, но, к сожалению, компания только недавно стандартизировала заголовки. Это означает, что отчеты могут называться как угодно, но, просмотрев .docs, многие из них имеют слово «отчет» в названии. Могу ли я в любом случае адаптировать свои текущие команды для более свободного поиска слова «отчет»?
Get-ChildItem -recurse -include *.doc | Out-File P:report.txt
Комментарии:
1. Вы ищете слово «отчет» в имени файла или в содержимом документа Word?
2. Спасибо, я не уверен, что вы имеете в виду, и это не помогает мне с PowerShell, но все равно спасибо.
3. @Josh, это был вопрос, пытающийся прояснить, что вы имели в виду.
4. Ах, хорошо, извините. 🙂 Я ищу поиск по имени файла и только по имени файла. Большая часть этих отчетов написана в word, и я понимаю, что чтение содержимого файлов Word в PowerShell довольно громоздко, поэтому имена файлов должны дать мне достаточно результатов для просмотра.
Ответ №1:
Наиболее эффективная версия должна быть
Get-ChildItem -Path "your path here" -recurse -Filter *report*.doc | Out-File P:report.txt
или, если вам нужен только путь в вашем файле:
Get-ChildItem -Path "your path here" -recurse -Filter *report*.doc | Select -ExpandProperty Fullname | Out-File P:report.txt
Ответ №2:
Попробуйте это:
Get-ChildItem -Path "your path here" -recurse -include *.doc | select-String "report" | out-file P:report.txt
Комментарии:
1. : ( Компьютеру это не понравилось, и он начал подавать звуковой сигнал. lol — теперь все смотрят на меня!
2. Это звучало как сигнал тревоги, моя роль не связана с программированием, поэтому мне интересно, думал ли он, что его взломали? Вы слышали об этом раньше?
3. Нет, приятель, я понятия не имею, почему ваш компьютер так себя ведет. Итак, вы использовали -Path с P:1_Contracts (2008-2013)??? убедитесь, что вы заключили их в кавычки, например: Get-ChildItem -path «P:1_Contracts (2008-2013)»
4. Я не задавал путь, глядя на него. Спасибо. Я запускаю его сейчас, но для фильтрации всего может потребоваться некоторое время. Я дам вам знать, как у меня дела. 🙂
5. По какой-то причине он вернул кучу тарабарщины, казалось, работал, пока я не открыл текстовый файл. Хотя спасибо за помощь. 🙂