Переменные по умолчанию в Bash

Либо:

grep -iEo 'entry=G_(1234|2345)'

То есть используйте оператор чередования расширенных ( E ) регулярных выражений.

Или с оболочками, поддерживающими расширение скобок, используйте:

grep -io '-eentry=G_'{1234,2345}

Затем оболочка расширит его до:

grep -io -eentry=G_1234 -eentry=G_2345

Заставляет grep искать любое из этих 2 e xpressions.

2
13.09.2018, 00:34
2 ответа

В Баше такого нет. Perl уникален тем, что он был создан лингвистом Ларри Уоллом, и в него намеренно встроена гладкость естественного языка. Баш в этом плане тупой.

Но на более высоком уровне конвейеры — это своего рода циклы, которые работают с объектами по умолчанию. Они не представлены никаким символом, поэтому они неявно используются по умолчанию. (Конвейеры есть и в Perl, и в Bash, если вы не знаете.)

2
27.01.2020, 21:52

Нет, в цикле forвы должны использовать явное имя переменной.

$ help for
for: for NAME [in WORDS... ] ; do COMMANDS; done

NAMEне является необязательным.

5
27.01.2020, 21:52

Теги

Похожие вопросы