Windows-команда, эквивалентная egrep - PullRequest
6 голосов
/ 02 февраля 2012

Можно ли запустить это в командной строке Windows, как я могу запустить в UNIX?

egrep -wi 'FRIENDS|FOES' *.sql

Эта команда предназначена для сканирования каждого файла SQL на наличие целых ключевых слов «Друзья» и «Противники»игнорирование регистра.

Ответы [ 6 ]

5 голосов
/ 02 февраля 2012

Ну, у вас может быть cygwin в Windows, поэтому у вас есть bash, grep и т. Д.

Если вам нужен только grep, то есть GnuWin32 .

Если вы не хотите ничего устанавливать и используете Win XP, попробуйте findstr, хотя это не может сделать «orring».

Если вы на Win-7, то есть powershell, с select-string.

3 голосов
/ 05 февраля 2012

Я думаю, что команда findstr является достаточно справедливой заменой Windows вместо Linux.

2 голосов
/ 02 февраля 2012

Я не уверен насчет условия ИЛИ, но основная функция должна выглядеть следующим образом

type *.sql | find /n "FRIENDS"
2 голосов
/ 02 февраля 2012

Эквивалентом Windows будет команда FIND:

C:\>find /?
Searches for a text string in a file or files.

FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] "string" [[drive:][path]filename[ ...]]

  /V         Displays all lines NOT containing the specified string.
  /C         Displays only the count of lines containing the string.
  /N         Displays line numbers with the displayed lines.
  /I         Ignores the case of characters when searching for the string.
  /OFF[LINE] Do not skip files with offline attribute set.
  "string"   Specifies the text string to find.
  [drive:][path]filename
             Specifies a file or files to search.

If a path is not specified, FIND searches the text typed at the prompt
or piped from another command.

Но вы также можете загрузить большинство утилит unix (включая grep) из http://gnuwin32.sourceforge.net/ (просто перетащите их в PATHи использовать их).

2 голосов
/ 02 февраля 2012

Зависит от вашей системы.У вас установлена ​​какая-то версия grep?Windows не имеет эквивалента grep из коробки, но вы можете установить Cygwin / GnuWin или unxutils.sourceforge.net .

0 голосов
/ 31 августа 2017

Здесь эквивалентно egrep "строка1 | строка2 | строка3":

PS: C:> findstr / C: строка1 / C: строка2 / C: строка3

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...