Я пытаюсь найти в stdin строку, которая выглядит следующим образом:
"\t", 7
Число '7' является переменной, поэтому я хочу сделать что-то вроде этого:
mumble | grep "\"\\t\", $number"
Греп ничего не возвращает. Я попытался разложить это на простейшие термины:
$ echo '"\t"'
"\t"
... как и ожидалось.
$ echo "\"\\t\""
"\t"
Рендеринг строки, которую я хочу, при интерполяции в двойных кавычках. Но ... * * 1013
$ echo '"\t"' | grep "\"\\t\""
ничего не возвращает.
Хорошо, давайте включим set -x, чтобы увидеть, что думает bash ...
$ echo '"\t"' | grep "\"\\t\""
+ grep '"\t"'
+ echo '"\t"'
... так что я говорю точно о том, что отражается ... и одинарные кавычки не являются специальными символами в базовом регулярном выражении, так почему же grep не соответствует этому?