Как grep несколько строк на нескольких файлах?

Я пытаюсь grep несколько строк на нескольких файлах. Это на Windows 7 x64, и я использую GNUWin32 аромат.

у меня есть grep.летучая мышь с этой командой:

grep "string1|string2|string3|string4" 20*.csv > out.csv

там на самом деле 68 строк, и они 11 символов, то есть строки в кавычки 869 знаков (сюда входят 2 персонажа разделители).

что происходит-я получаю out.csv, но все это делают переменный между 0 байтами и копией моей команды grep! А? Почему grep ищет a .bat-файл, когда я явно сказал ему проверять только файлы, соответствующие 20*.csv?

Если я удалить > out.csv и запустить .bat снова, то все, что я получаю, это моя командная строка повторяется снова и снова в окне командной строки.

29
задан Aren Cambre
14.01.2023 17:58 Количество просмотров материала 2965
Распечатать страницу

2 ответа

это работает в моем grep, он должен работать на любой платформе. То, что вы хотите сделать, это прочитать шаблоны из файла. Вот пример (обратите внимание на ' - f -', т. е. читать шаблоны из стандартного ввода (-):

$ man grep > grep.txt
$ man cat > cat.txt

$ cat > patterns
terminfo
full
should

(нажмите Ctrl+D здесь)

$ cat patterns | grep -f- *.test 
cat.test:       The  full  documentation for cat is maintained as a Texinfo manual.  If
cat.test:       should give you access to the complete manual.
grep.test:              This  version  number should be included in all bug reports (see
grep.test:              should avoid both -q and -s and  should  redirect  standard  and
grep.test:       implementations support \{ instead, so portable scripts should avoid  {
grep.test:       in grep -E patterns and should use [{] to match a literal {.
grep.test:       portable scripts should avoid it.
grep.test:                     terminfo capability  does  not  apply,  when  the  chosen
grep.test:              file name wildcard expansion and therefore should not be treated
grep.test:       pcrepattern(3), terminfo(5), glob(7), regex(7).
grep.test:       The full documentation for grep is maintained as a TeXinfo manual.   If
grep.test:       should give you access to the complete manual.
0
отвечен Leo 2023-01-16 01:46

используйте grep на Ubuntu на виртуальной машине VirtualBox и получите доступ к хосту Windows с помощью функции общих папок VirtualBox. Это не первая ошибка, которую я нашел в grep GNUWin32.

0
отвечен Aren Cambre 2023-01-16 04:03

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх