Quiero encontrar el número de ocurrencias de XXX
en mi documento de látex que no tienen la forma de un comando como \XXX
. Por lo tanto, estoy buscando ocurrencias que no estén precedidas por una barra diagonal inversa.grep backslash en negativo lookbehind
He intentado lo siguiente:
grep -c -e '(?<!\)XXX' test.tex #result: grep: Unmatched) or \)
grep -c -e '(?<!\\)XXX' test.tex #result: 0
grep -c -e "(?<!\\)XXX" test.tex #result: -bash: !\\: event not found
ninguno de ellos funciona como es debido. De hecho, no entiendo el último mensaje de error.
Mi test.tex sólo contiene las siguientes líneas
%test.tex
XXX
\XXX
Así, el resultado esperado es 1
.
¿Alguna idea?
Ps .: Estoy trabajando en bash.
FYI, en su último ejemplo, el! en comillas dobles se interpreta como una expansión de historial, pero '! \\' no es una expresión de expansión de historial válida. – chepner