command-line – ¿Cómo puedo eliminar la lista de materiales de un archivo UTF-8?

Pregunta:

Tengo un archivo en codificación UTF-8 con BOM y quiero eliminar el BOM. ¿Existe alguna herramienta de línea de comandos de Linux para eliminar la lista de materiales del archivo?

$ file test.xml
test.xml:  XML 1.0 document, UTF-8 Unicode (with BOM) text, with very long lines

Respuesta:

Si no está seguro de si el archivo contiene una BOM UTF-8, entonces esto (asumiendo la implementación GNU de sed ) eliminará la BOM si existe, o no hará cambios si no es así.

sed '1s/^\xEF\xBB\xBF//' < orig.txt > new.txt

También puede sobrescribir el archivo existente con la opción -i :

sed -i '1s/^\xEF\xBB\xBF//' orig.txt

Si está utilizando la versión BSD de sed (por ejemplo, macOS), entonces necesita que bash haga el escape:

 sed $'1s/\xef\xbb\xbf//' < orig.txt > new.txt

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım