Intereting Posts
Как переключается переключатель -name в GNU, когда он нацелен на каталог и его содержимое? Оцените время, потраченное на проект Git с помощью grep Проблемные цитаты в котором файл является псевдонимом имен хостов, если нет / etc / hosts? Как получить последнее вхождение строк между двумя шаблонами из файла? Как сохранить выходную команду в переменной и снова использовать эту переменную для следующей команды после канала как создать зеркало rpm по требованию Gnome: cairo-dock сохраняет странную позицию после полной переустановки Как получить файлы, загруженные yum? automount не работает в linux mint после обновления до rafaela Как прозрачно включить ccache для нескольких наборов инструментов? Рекурсивно выполнить композитную команду imagemagick в дереве каталогов Как заставить bash начать с индекса 0 с выделенным выходом? Странное поведение samba и gvfs – половина каталогов / файлов случайно оказывается «отсутствующей», Сделать все новые файлы в каталоге доступным для группы

Как правильно использовать / usr / xpg4 / bin / grep -F

У меня проблема с фильтрацией hanzoMollusc (2) из ​​моего grep.

https://node.hanzo.com/production/application/ (1) https://node.hanzoMollusc.com/Messaging/Receiver (2) 

Моя команда grep – это для (2), которая работает нормально.

 /usr/xpg4/bin/grep -E 'node.hanzoMollusc.*Exception' diag* | grep -c 2013-03-28 

Проблема в том, хочу ли я искать (1) мне нужно немного изменить команду grep и использовать -F, где указано в руководстве

 "Matches using fixed strings. Treats each pattern specified as a string instead of a regular expression" 

Это то, что я до сих пор придумал … который не работает …

 /usr/xpg4/bin/grep -F 'https://node.hanzo.com/application/*Exception' diag* | grep -c 2013-03-28 

Моя проблема заключается в части домена, которая является node.hanzo и node.hanzoMollusc, поэтому я не использовал -E on (1). Может ли кто-нибудь помочь мне исправить это.

редактировать

Я смог получить то, что хочу, с помощью нескольких настроек из примера Жиля. На самом деле он был прав, я попробовал прочитать свой вопрос, и это было непонятно. Это моя проблема.

У меня проблема фильтрации этого

 https://node.hanzoMollusc.com/Messaging/Receiver 

каждый раз, когда я использую эту команду:

 /usr/xpg4/bin/grep -E 'node.hanzoMollusc.*Exception' diag* | grep 2013-03-28 

потому что он также показывает результаты node.hanzo и node.hanzoMollusc.

Я изменил пример Гиллеса, и я смог получить результат правильно

 /usr/xpg4/bin/grep -E '(https://node.hanzo.com/production/application)[/ ].*Exception' diag* 

Большое спасибо Жилю.

Неясно, что вы хотите сопоставить: ваши примеры противоречивы.

grep -F соответствует точной строке. Если вы поместите аргумент * в аргумент, он будет соответствовать только символу * в файле.

Если вы хотите разрешить сопоставление нескольких строк, используйте -E и | оператор. Например, следующая команда соответствует строкам, содержащим https://node.hanzo.com/production/application/somepath Exception Foo или https://node.hanzoMollusc.com/Messaging/Receiver/somepath Exception Foo (где часть /somepath является переменной и может быть опущена).

 grep -E '(https://node.hanzo.com/production/application|node.hanzoMollusc.com/Messaging/Receiver)[/ ].*Exception' diag*