Обновить кеш в cmus

grep -E '^[^0-9]*1234([^0-9]+1234)*[^0-9]*$' file.txt

Объяснение

  • ^[^0-9]*1234: найти первое совпадение 1234, которому могут предшествовать нецифровые символы.
  • ([^0-9]+1234)*: могут быть дальнейшие итерации 1234, но они должны быть отделены от первых 1234 (и других 1234) нецифровыми символами (поэтому используйте +).
  • [^0-9]*$: соответствует всей строке (с $). После финала 1234 могут быть нецифровые символы (но не обязательно, следовательно *).

EDIT

Если 1234 должны быть разделены пробелами (или находиться в начале или в конце строки), то используйте

grep -E '^([^0-9]* )?1234(( [^0-9]*)? 1234)*( [^0-9]*)?$'

Explanation

  • ^([^0-9]* )?: в начале могут быть нецифровые символы, если они заканчиваются пробелом.
  • 1234: найти первое (необходимое) совпадение 1234.
  • (( [^0-9]*)? 1234)*: Я проработаю скобки в обратном порядке. Могут быть (ноль или больше) дополнительные копии 1234, но им должен предшествовать пробел, т.е. 1234. Перед этим пробелом могут стоять нецифровые символы, что нормально, если они отделены от предыдущей копии 1243 другим пробелом, т.е. ( [^0-9]*)?.
  • ( [^0-9]*)?$: в конце могут быть нецифровые символы, если им предшествует пробел.
3
27.02.2019, 06:49
1 ответ

Ну, я понял. Просто нужна была команда update-cache.

6
27.01.2020, 21:18

Теги

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