^@
é geralmente uma representação do caractere NUL (valor de byte 0).
Muitos utilitários de texto não-GNU não podem lidar com isso, pois não foram encontrados em texto.
Algumas versões do GNU grep
podem encontrá-lo com:
grep -P 'grep -rlZP 'find . -type f -exec gawk -vORS='grep -P 'grep -rlZP 'find . -type f -exec gawk -vORS='%pre%' '
/%pre%/{print FILENAME; nextfile}' {} + |
xargs -r0 sed -i 's/\x0//g'
' . | xargs -r0 sed -i 's/\x0//g'
'
' '
/%pre%/{print FILENAME; nextfile}' {} + |
xargs -r0 sed -i 's/\x0//g'
' . | xargs -r0 sed -i 's/\x0//g'
'
O GNU sed
pode removê-lo com sed 's/\x0//g'
, então:
Se o seu grep
não os encontrar, experimente o GNU awk
: