Как «grep» для длины строки * not * в заданном диапазоне?

ПРИМЕЧАНИЕ. Этот вопрос является дополнением к этому Q & A: как «grep» для длины строки в заданном диапазоне?


Как мы можем использовать grep для строк, которые имеют менее 8 или более 63 символов, ни один из которых содержит более восьми и менее 63 символов?

  • Рисунок Grep и шаблон в шаблоне
  • Ограничить контекст grep на N символов в строке
  • Контекст соответствующего регулярного выражения
  • Добавление строки в файл из удаленного ssh
  • Есть ли недостаток в использовании «grep -E» вместо простого «grep»?
  • Как добавить строку во многие файлы
  • Таким образом, некоторые допустимые количества символов могут быть …

    7 6 5 4 3 2 1 0 

    …а также…

     64 65 66 67 ... 

  • Regex ищет корни слова с общими префиксами
  • Как удалить определенные ключи из списка слов?
  • Регулярное выражение для проверки crontab
  • Цитаты в командах - пример grep
  • Зачем получать эти «Разрешенные разрешения» в POSIX find-grep для чтения?
  • Как восстановить файл tar, где stderr был смешан с stdout?
  • One Solution collect form web for “Как «grep» для длины строки * not * в заданном диапазоне?”

     grep -xv '.\{8,63\}' <input >output 

    Переключатель -x grep обозначает целое совпадение строк, что означает, что любой сопоставленный шаблон должен определять линию от головы до хвоста. делать …

     grep -x pattern 

    … обычно эквивалентно …

     grep ^pattern$ 

    grep -v переключатель отключает влияние шаблона на выбор линии. обычно делает …

     grep pattern 

    … будет выбирать только строки, соответствующие шаблону, но с отрицательным шаблоном -v выбираются только те строки, которые не совпадают.

    …и так…

     grep -xv '.\{8,63\}' 

    … соответствует всем строкам, которые состоят из головы в хвост где угодно между 8 и 63 символами, а параметр -v отрицанием вызывает grep только для печати всего остального.

    Linux и Unix - лучшая ОС в мире.