serii81
@serii81
Я люблю phр...

Как включить в zsh регулярные выражения?

Такое выражение ls +([0-9]).jpg в zsh не работает, а в bash - да.
Как включить поддержку регулярных выражений в zsh?
  • Вопрос задан
  • 241 просмотр
Решения вопроса 2
DevMan
@DevMan Куратор тега bash
ls [0-9].jpg
синтаксис зсх далеко не всегда совпадает с башем.
Ответ написан
xotkot
@xotkot
хорошо есть и хорошо весьма
аналогом bash-евскому расширению:
shopt -s extglob
в zsh служит:
set -o kshglob
после чего ваше выражениеls +([0-9]).jpg будет обрабатываться одинаково
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
jcmvbkbc
@jcmvbkbc
http://dilbert.com/strip/1998-08-24
Такое выражение ls +([0-9]).jpg в zsh не работает, а в bash - да.

Не работает оно в bash, по крайней мере в дефолтных настройках:
$ ls +([0-9]).jpg
bash: syntax error near unexpected token `('

В bash нет поддержки регулярных выражений, есть extended globbing:
If the extglob shell option is enabled using the shopt builtin, several extended pattern matching operators are recognized.
Ответ написан
saboteur_kiev
@saboteur_kiev Куратор тега bash
software engineer
Это не регулярные выражения, это маски файлов - баш поддерживает *, ?, ~ и простой перечень с диапазонами квадратных скобках []
Но это НЕ регулярки, оно ни под один стандарт регэкспов не подпадает. Тех же квантификаторов нет.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы