2010-11-01

Findstr.exe

Недавно мне пришлось использовать findstr.exe для поиска скрипта. Я знал каталог, где он находится. А так-же что скрипт был написан на Powershell. И еще помнил что там используется переменная $pgroups…  Задача была решена так:

cd c:\scripts
findstr  /s  "\$pgroups"  *.ps1

Файл я очень быстро нашел. Давайте разберем параметры.

/s означает что, нужно искать в текущем каталоге и во всех подкаталогах.

"\$pgroups"  это регулярное выражение для поиска. В регулярных выражениях знак $ имеет особое значение. Поэтому если я хочу найти строки действительно содержащие этот знак, мне его нужно экранировать. Т.е. вместо "$pgroups" пишем "\$pgroups".

*.ps1 Ну а это обычная маска для файлов в которых надо искать.

Все достаточно просто. Недавно, кстати, Александр Трофимов в своем блоге писал про эту утилиту.

http://rublog.alex-trofimov.com/2010/10/3.html

О регулярных выражениях хорошо рассказал Василий Гусев.

http://xaegr.wordpress.com/category/regular-expressions/