Si vim
está instalado, puede usarlo en el modo ex
como:
vim -e -s -c 'argdo g/^Text\nLine/#' -c q./*.txt
Ver también el comando z
para dar contexto.
vim -e -s -c 'argdo g/^Text\nLine/z#.5' -c q./*.txt
Sin embargo, eso no imprime los nombres de los archivos. Un enfoque no muy eficiente perl
podría ser:
perl -l -0777 -ne 'while (/Text\nLine/g) {
print "$ARGV, line ". ++(() = $` =~ /\n/g)}'./*.txt
Да. Вы можете использовать любой разделитель, который вам нравится.
См. это руководство для получения дополнительной информации...
-m64 ничем не заменится, так что да, удаляет. Поскольку у вас есть «g» в конце, это будет глобально в документе.
Да, то же самое, что и с разделителем /
. Иногда вы можете использовать разные разделители, чтобы не путать sed
.
В этом случае вы заменяете все экземпляры -m64
пустой строкой, а не удаляете как таковую.
См. этот ресурс об использовании разделителей в sed
.