Либо:
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.
В Баше такого нет. Perl уникален тем, что он был создан лингвистом Ларри Уоллом, и в него намеренно встроена гладкость естественного языка. Баш в этом плане тупой.
Но на более высоком уровне конвейеры — это своего рода циклы, которые работают с объектами по умолчанию. Они не представлены никаким символом, поэтому они неявно используются по умолчанию. (Конвейеры есть и в Perl, и в Bash, если вы не знаете.)
Нет, в цикле for
вы должны использовать явное имя переменной.
$ help for
for: for NAME [in WORDS... ] ; do COMMANDS; done
NAME
не является необязательным.