PowerShell Select-String не может извлечь новые строки, созданные в текстовом потоке из канала?

Я хочу найти слова, содержащие ключевое слово из текстовых файлов. Пример текстового файла (test.txt) содержит строки ниже. Here is unmatched part. " Happynimall happy-monkey:2 happy-cat:5 " Here is unmatched part too. Here is unmatched part too.

Поэтому я попробовал команды powershell следующим образом.

$(gc test.txt).replace(' ',"`n")|select-string 'monkey','cat'

Но результат не смог извлечь только соответствующую строку слова, как это. " Happynimall happy-monkey:2 happy-cat:5 "

Кстати, cmd "findstr" хорошо работает для извлечения совпадающей строки слова, сгенерированной в потоке канала.powershell -command "$(gc test.txt).replace(' ',"""`n""")"|findstr "monkey cat" happy-monkey:2 happy-cat:5

Почему "select-string" не может извлечь только совпадающие строки слова? Почему "findstr" может это сделать? Как я могу заставить select-string дать тот же результат с findstr? Есть ли кто-нибудь, чтобы помочь мне понять это и заставить select-string сделать это? Заранее спасибо:-)

0 ответов

Другие вопросы по тегам