Creo que me encontré con un error en un archivo por lotes porque estaba escrito con terminaciones de línea unix. ¿Es este un problema conocido con cmd.exe ejecutando archivos por lotes en Windows?
windows
batch-file
cmcginty
fuente
fuente
Respuestas:
Esto realmente no es un "error" ... ya que es por diseño. Las nuevas líneas de Windows se definen como "\ r \ n" ... o una combinación de "Retorno de carro" y "Nueva línea" ... mientras que los sabores * nix prefieren omitir el retorno de carro. Siempre debe usar "\ r \ n" en cualquier cosa en Windows donde sea posible. Cualquier otra cosa puede ser interpretada incorrectamente ... y causar una gran cantidad de resultados inesperados.
fuente
Se parece que los lotes etiquetas se omiten cuando
LF
se utiliza (de fin de línea Unix) en un.bat
archivo.fuente
Para los archivos por lotes, no parece haber diferencia entre las terminaciones de línea de Unix y las terminaciones de línea de Windows.
goto
,call
o incluso la creación de variables de salto de línea funciona con ambos estilos.Y a medida que el analizador por lotes elimina los retornos de carro directamente después de la fase de expansión porcentual, nunca jugarán un papel importante.
fuente