¿Cómo paso una barra literal hacia adelante en Node.js en Git Bash para Windows?

Estoy usando Git Bash para Windows (como en, hago clic derecho en algún directory y selecciono "Git Bash aquí" en el menu contextual). Node.js v5.10.1.

Aquí está mi script completo de Node.js, example.js :

 console.log(process.argv); 

Aquí está mi línea de command y el resultado:

 $ node example.js "https://example.com" [ 'C:\\...\\node.exe', 'C:\\...\\example.js', 'https:\\example.com' ] 

Observe cómo el argumento de input " https://example.com " tiene dos barras diagonales directas , pero la cadena resultante "https: \\ example.com" tiene una barra invertida literal .

He encontrado que no hay cantidad de barras invertidas (por ejemplo, "https: \\ / example.com") o barras diagonales adicionales (por ejemplo, " https: ////////example.com ") en la command-line. evitar que esto suceda El resultado es siempre una barra invertida literal.

El uso del mismo ejecutable Node.js para ejecutar el mismo script desde una window ordinaria de Windows cmd.exe no causa este comportamiento. Ejecutar un script Python equivalente de Git Bash para Windows tampoco causa este comportamiento.

Actualizar

Ver este:

 $ node.exe -e "console.log(process.argv)" "https://example.com" [ 'C:\\...\\node.exe', 'https://example.com' ] $ node -e "console.log(process.argv)" "https://example.com" [ 'C:\\...\\node.exe', 'https:\\example.com' ] 

¿Por qué eliminar ".exe" del final de la llamada hace que las barras se inviertan? Estoy usando NVM 1.1.0, si eso es relevante. which node.exe y which node devuelven resultados idénticos, ambos apuntando a ese file EXE. No hay un file separado llamado node en ese directory. Esto sucede tanto en Node.js 5.10.1 como en Node.js 6.0.0.

Git Bash se basa en MSYS2, que hace una " conversión de ruta POSIX " como lo hace MinGW. Esta conversión windows-ifys routes con barras al llamar ejecutables de Windows. MSYS2 podría haber hecho alguna detección de "Windows-looking" de una manera diferente a MinGW.

La pregunta joezen777 mencionada en los comentarios apunta a una solución : simplemente agregue ;https:;http: MSYS2_ARG_CONV_EXCL ;https:;http: a MSYS2_ARG_CONV_EXCL . La documentation está disponible en https://github.com/msys2/msys2/wiki/Porting .