¿Cuáles son algunos tipos de archivos de texto que no deberían terminar con nuevas líneas?

¿Cuáles son algunos tipos de archivos de texto que no deberían terminar con nuevas líneas?

Esta preguntayesta preguntaSeñale que generalmente el estándar es finalizar los archivos de texto con caracteres de nueva línea para cumplir con el estándar POSIX, y esto es algo que se espera con las herramientas GNU y otras herramientas compatibles con POSIX.

Sin embargo, como desarrollador de C#, sé que las herramientas que funcionan con csprojarchivos generalmente no incluyen un carácter de nueva línea final. También he visto herramientas que eliminan la nueva línea final de archivos jsony xml. Creo que tiene sentido evitar incluir una nueva línea al final de los archivos de texto si las herramientas comunes que trabajan con los archivos terminarían eliminándolos nuevamente.

Entonces, ¿cuáles son algunos tipos de archivos de texto que no deberían terminar con caracteres de nueva línea debido a las herramientas?

Respuesta1

Aunque no es exactamente un archivo de texto, un enlace simbólico es efectivamente un archivo pequeño que contiene un fragmento de texto (a menudo encaja en el propio inodo, por lo que no es necesario asignar bloques de datos al archivo).

Un enlace simbólico puede terminar con una nueva línea, pero en las circunstancias más comunes no debería ser así.

Otro tipo de archivo que no debería (bueno, no puede) terminar con una nueva línea es el archivo vacío.

En UNIX, un archivo de texto está vacío o contiene una o más líneas posiblemente vacías, cada una de las cuales termina con una nueva línea. Si la última línea no termina con una nueva línea, el archivo no es un archivo de texto adecuado.

El archivo vacío no contiene ningún byte; en el momento en que agrega una nueva línea, cambia su "tipo" de vacío a no vacío.

Respuesta2

un archivo de texto utilizado como entrada para los términos de búsqueda procesados ​​por grep -fno debe terminar con una nueva línea(** en editor de texto)de lo contrario eso coincidiría con todo

Puedes probarlo tú mismo con este ejemplo.
grep no encuentra todas las instancias del gen

captura de pantalla


Editar:tenga en cuenta que la pregunta trata sobre recopilar ejemplos donde"Los archivos de texto no deberían terminar con caracteres de nueva línea debido a las herramientas".Aunque mi primera afirmación no se aplica en general, es un ejemplo perfecto de tal"tipo de archivo de texto"(archivo creado por el editor de texto) y, por lo tanto, válido en el contexto de la pregunta, porque eso es lo que todos experimentan cuando usan un editor de texto.

No significa una declaración amplia con respecto al \ncarácter de nueva línea en el nivel del sistema de archivos, sino un ejemplo de caso de esquina de unusuario normalperspectiva

gracias @Kusalananda @ilkkachu por aclarar que en realidad son dos \n\ncaracteres de nueva línea (aunque el editor de texto agrega uno silenciosamente y, por lo tanto, es invisible)

información relacionada