Читая этот вопрос , я обнаружил, что в GNU grepесть -Xопция, которая ожидает аргумент. Как ни странно, это не упоминается ни на странице руководства, ни на странице информации.
Глядя на исходный код, этот комментарий находится прямо в середине --helpвывода :
/* -X is deliberately undocumented. */
Глядя дальше, кажется , что -X matcherопция устанавливает двигатель , используемый для регулярного выражения , matcherбудучи одним из grep , egrep, fgrep, awk, gawk, posixawkи perl(в версии 2.25).
Некоторые из этих значений строго идентичны существующих вариантов (а именно grep -G, grep -E, grep -Fи grep -P). С другой стороны, три awkварианта не имеют соответствующих опций.
Кто-нибудь знает, какова реальная цель этой опции, особенно с одним из awkдвигателей регулярных выражений? Может кто-нибудь сказать мне, почему это намеренно не задокументировано?
-X, намеренно не имея документов. (Его адрес электронной почты находится в списке изменений, если вы хотите спросить его.)
-Eдля GNU sed, которая обеспечивает совместимость с BSD sed. (Я ожидаю,-Eчто документально подтвердится, если POSIX официально примет его и удалит, если он этого не сделает.)