Bienvenida a los foros de Perl en Español, emencia.
Si el archivo está en formato UTF-8 se debería procesar de esa manera, pero... supongamos que queremos procesarlo como una ristra de bytes.
Entonces, veamos primero el aspecto del archivo, por dentro:
Using text Syntax Highlighting
$ hexdump -C pruebas.xml
00000000 ef bb bf 0d 0a 4c c3 ad 6e 65 61 20 31 20 c2 a9 |.....L..nea 1 ..|
00000010 0d 0a 4c c3 ad 6e 65 61 20 32 20 e2 80 a8 0d 0a |..L..nea 2 .....|
*
00000022
Coloreado en 0.000 segundos, usando
GeSHi 1.0.8.4
y ya vemos que los caracteres especiales son "c2a9" y "e280a8".
Entonces, esto funciona:
Using text Syntax Highlighting
$ perl -pe "s/\x{c2}\x{a9}/COPYRIGHT/g; s/\x{e2}\x{80}\x{a8}/L SEPARATOR/g;" pruebas.xml
Línea 1 COPYRIGHT
Línea 2 L SEPARATOR
Coloreado en 0.000 segundos, usando
GeSHi 1.0.8.4
Como ves, estamos poniendo cada byte por separado con "\x{..}".