3

Я пытаюсь получить строку с обратной косой чертой в конце строки, например:

abc\
def
ghij
...

Я надеюсь, что это может grep строки "abc\". Я попробовал команду ниже, но они не работали.

grep -EHn "\\$" test_file
grep -PHn "\\$" test_file

Как мне решить эту проблему? Я просто не знаю логику экранирования в grep. Выражение действительно работает в VIM.

2 ответа2

5
grep '\\$' test_file

у меня отлично работает на Solaris 9 и Ubuntu 12.04.

Одинарные кавычки и двойные кавычки отличаются тем, какие символы воспринимаются буквально или используются как экранирующие / специальные символы.

3

Я как-то преодолел проблему, используя ниже:

grep -Hn  "\\\\$"

Но я не уверен, почему четыре слеша сработали бы здесь. Это просто сработало.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .