Я пытаюсь выполнить следующую команду, и она не работает: grep -a '2$' text.txt
Надеюсь, кто-нибудь может мне это объяснить.
Сначала файл text.txt, Когда я открываю его с помощью VIM (Visual Editor), отображается [noeol] и [dos]. Если я использую set list
, я вижу $ в конце строки, я вижу много ^M^L
в конце страницы и столько же ^@
. Я также вижу $
.
Мои первые 3 вопроса: 1. Что такое ^M
? Возврат каретки? 2. Что такое ^L
? точно? Перевод строки? 3. Я прочитал, что ^@
является нулевым символом. Почему это там?
Если я сделаю grep '2' text.txt
, он вернет
Двоичный файл (стандартный ввод) соответствует при попытке найти строковый шаблон в файле
Итак, я делаю grep -a '2' text.txt
, и я получаю ожидаемые результаты.
Если я сделаю grep -a '2$' text.txt
, потому что мне нужно 2 в конце строки, команда не выполнится и ничего не показывает.