-р
пометить grep
указывает ему искать каждый файл в вашем текущем каталоге и во всех подкаталогах. (Вы можете узнать о -р
, -я
-, и -н
прочитав документацию, человек grep
.)
Команда совпала № кв.
в файле .виминфо
, и напечатал совпадающие строки. Обратите внимание, что в вашем тексте вы говорите, что хотите найти кв.нет
но на вашем снимке экрана (тьфу; гораздо лучше скопировать и вставить как текст) вы на самом деле напечатали № кв.
с завершающей точкой. Кроме того, ваши инструкции, кажется, требуют, чтобы вы искали подходящий нет.
(с пробелом). Имейте в виду, что с grep
, точка — это подстановочный знак, который будет соответствовать любой персонаж, и если вы ищете текст, содержащий пробел, он должен* помещаться внутри кавычек.Возможно, вы хотели запустить эту команду, которая ищет буквальную строку подходящий нет.
без сопоставления подстановочных знаков?
grep -rF 'подходящий. нет.'
Твой grep
также пытался найти файл нано.сохранить
, но похоже, что он либо вам не принадлежит, либо вы удалили из него свои разрешения на чтение. Если файл находится в вашем собственном домашнем каталоге, вы, вероятно, можете безопасно удалить этот файл (пм нано.сохранить
). Если он находится в общей области, вам либо придется жить с сообщением об ошибке, либо явно исключить его из grep
, или скажите оболочке отбросить все сообщения об ошибках от команды:
grep -Fr 'подходящий. нет.' # Живи с этим
grep -Fr --exclude='nano.save' 'подходящий. нет.' # Исключить именованный файл
grep -Fr 'подходящий. нет.' 2>/dev/null # Отбросить *все* сообщения об ошибках
Если у вас есть права root, вы можете выполнять поиск с этими разрешениями, но переход на уровень root должен выполняться с осторожностью; практически нет никаких ограничений, если вы работаете как root:
sudo grep -Fr 'апт. нет.' # Запускаем от имени root
* Если не заключены в кавычки, вам нужно экранировать каждое появление специального символа, например пробела. Я не собираюсь делать это здесь.