В то время как это - случай, где Вы действительно хотите использовать -F
здесь, единственный символ, который специален без -F
вот [
так единственный, которому нужно оставленный для grep
, $
потребности, которых оставят для оболочки, но не для grep
как хотя $
regex оператор, это не находится в том положении. [
оболочка globbing оператор, но не в двойных кавычках
grep -r "\$form\['#node']" .
должен работать. Конечно, как указано @slm, нет никакой причины не использовать -F
здесь.
grep -Fr "\$form['#node']" .
(с GNU grep
(по крайней мере, последние версии этого), -r
должен быть предпочтен -R
если Вы действительно не намереваетесь пересечь символьные ссылки).
Я выяснил, что проблема была вызвана обновлением ядра, которое каким-то образом испортило мой драйвер графического процессора (NVidia 349.16, x64). Как ни странно, мне не удалось решить проблему, установив более новую версию драйвера NVidia из репозиториев Ubuntu через Программное обеспечение и обновления> Дополнительные драйверы (я пробовал как открытые, так и проприетарные версии), но мне пришлось установить вручную та же версия, что была у меня до проблемы (349.16). Это решило проблему.
Проведя два дня и проведя небольшое исследование, я обнаружил, что после каждого обновления ядра драйвер NVidia необходимо переустанавливать. (Однако есть некоторые обходные пути, как указано здесь: https://askubuntu.com/questions/492217/nvidia-driver-reset-after-each-kernel-update ). Единственное, что меня удивило, это то, что проблема не была решена, когда я попытался установить другие новые драйверы NVidia, которые также поддерживают мою видеокарту (Quadro K2200), но мне нужен был тот же драйвер, что и раньше, чтобы исправить это.
У меня была та же ошибка, но, поскольку файлы в /usr/lib/x86_64-linux-gnu/xorg/x11-extra-modules/
ссылались на старые вещи, и поскольку этот вопрос подтвердил грубость, я переместил содержимое в каталог tmp в моем доме и сделал
systemctl restart gdm
Все работало отлично.
Я использовал nvidia -396 на Ubuntu 18.04 и смог перейти на драйвер 415.