Cygwin неожиданный токен `(' с grep

Вы можете попробовать следующую команду для своего сценария:

xrandr --output MONITORNAME --rotate right

Чтобы узнать имя вашего монитора, проверьте вывод:

xrandr | grep connected

Имена мониторов выглядят как LVDS (обычно внутренний экран), VGA-0 , HDMI-0 и т. Д.

Если вы не уверены, какой монитор какой, попробуйте один; - повернуть нормальный вернет его на прежнее место, если у вас не тот. И в зависимости от ориентации монитора вам может потребоваться - повернуть влево вместо вправо .

1
08.05.2018, 18:28
1 ответ

[, \, (и )имеют особое значение для оболочки и должны быть заключены в кавычки, если вы намерены передать их дословно в аргументе команды (здесьgrep).

Также обратите внимание, что такие диапазоны, как [a-z], не имеют смысла вне локали C.

Так вот, вы наверное хотите:

LC_ALL=C grep -xE '[[:alnum:]]+\.[[:alnum:]]+@(E|e)nron\.com' < some-file

Или:

LC_ALL=C grep -xE '[[:alnum:]]+\.[[:alnum:]]+@[Ee]nron\.com' < some-file

Сообщить о строках, соответствующих этому Eрасширенному регулярному выражению e xactly. С символами alpha numerical, ограниченными символами Cлокали (, поэтому на Cygwin английские/латинские буквы ASCII без диакритических знаков и арабских десятичных цифр; в локали C [[:alnum:]]и [a-zA-Z0-9]соответствуют одному и тому же ).

Выше, используя '...'форму цитирования, которая является самой сильной (в них нет специального символа ).

+, |, (...)являются расширенными операторами регулярных выражений (, а не базовыми операторами регулярных выражений, как ожидается grepбез-E). Без -xgrepбудет искать совпадения в пределах строк, поэтому, например, будет найдено совпадение в строке типа:

foo@bar.com x.y.z@enron.common.br whatever
              ^^^^^^^^^^^^^

Без LC_ALL=C, [[:alnum:]]может совпадать с символами других буквенных алфавитов (, таких как греческий, кириллический, корейский ),и [a-z]могут совпадать с некоторыми латинскими символами с диакритическими знаками, такими как á, ç, ÿ, но не с другими, такими как , ź, поскольку они идут после z...

. ]
2
27.01.2020, 23:32

Теги

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