Дайте команду, которая заставит файлы greps начинать с согласной и иметь только гласные после

Попробуйте изменить параметр inet_protocol в настройках postfix. Перейдите в /etc/postfix/main.cf и измените с:

inet_protocols = all

на:

inet_protocols = ipv4

Затем

service postfix reload
service postfix flush
1
22.03.2018, 21:22
2 ответа

Вам нужно:

  1. цитировать регулярное выражение
  2. удалите пробел между (он будет искать его)
  3. добавить +для соответствия одной или нескольким гласным (особенность egrepрегулярных выражений)

Попробуйте:

egrep -i '^[^aeiou][aeiou]+$' /usr/share/dict/words
0
27.01.2020, 23:44

Вам нужно будет заключить в кавычки выражение из оболочки:

grep -i '^[^aeiou][aeiou]*$' /usr/share/dict/words

Если вы этого не сделаете, шаблон (s )может быть расширен до имен файлов, существующих в текущем каталоге. Кроме того, поскольку вы вставили пробел в -между двумя частями шаблона, grepбудет думать, что вторая часть является именем файла, который следует искать (, вы получите сообщение об ошибке «Нет такого файла или каталога». ).

В файле /usr/share/dict/wordsпо одному слову в строке, поэтому вы можете использовать -xи удалить привязки из выражения, если хотите:

grep -ix '[^aeiou][aeiou]*' /usr/share/dict/words

С -xgrepбудет возвращать только совпадения, охватывающие всю строку.

Если вам требуется гласная (, приведенное выше может возвращать одиночные согласные слова, поскольку [aeiou]*соответствует пустой строке):

grep -ix '[^aeiou][aeiou][aeiou]*' /usr/share/dict/words

или

grep -Eix '[^aeiou][aeiou]+' /usr/share/dict/words
1
27.01.2020, 23:44

Теги

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