2012-06-20 3 views
1

я в настоящее время имеют следующиеПоиск нескольких строк в файле

Get-ChildItem -recurse -include file.ext | Select-String -pattern "c:" | group path | select name | export-csv results.csv 

Если бы я хотел, чтобы найти вещи, как с «C:» и «d:» как бы я написать эту логику?

Благодаря

+0

Вы можете упростить 'group' и' select' часть с помощью 'выбрать Уникально path'. Хотя название столбца в CSV изменилось бы тогда. – Joey

ответ

5

Select-String принимает регулярное выражение, так что вы можете просто использовать

Select-String '[cd]:' 

, который будет соответствовать либо c: или d:.

Для более сложных, вы можете использовать конструкцию чере:

Select-String '(mike|sally):' 
+0

а если это были струны "mike" и "sally"? – mhopkins321

+0

Я думаю, вам нужно избегать трубы в соответствии с этим: http://www.powershelladmin.com/wiki/Powershell_regular_expressions#Example_-_Select-String –

+0

Нет. В этом примере он используется для соответствия литерала '|'. Если вы хотите, чтобы специальные символы в регулярном выражении по-прежнему выполняли свою специальность, вы не должны их избегать. – Joey

Смежные вопросы