Я пытаюсь grep несколько строк на несколько файлов. Это на Windows 7 x64, и я использую GNUWin32.
У меня есть grep.bat с этой командой:
grep "string1\|string2\|string3\|string4" 20*.csv > out.csv
На самом деле там 68 строк, каждая из которых содержит 11 символов, поэтому длина строки в кавычках составляет 869 символов (включая 2 разделителя символов).
Что происходит, я получаю out.csv, но все, что он делает, - это чередование между 0 байтами и копией моей команды grep! А? Почему grep ищет файл .bat, когда я явно сказал ему проверять только файлы, соответствующие 20 * .csv?
Если я > out.csv
и снова запускаю .bat, то все, что я получаю, это моя командная строка, повторяемая снова и снова в окне командной строки.