Me aparezco nuevamente por aquí, pero esta vez para hacer un pequeño pero importante aporte, que me hubiese gustado mucho conseguir hace tiempo atrás.
Supongo que les ha pasado que han colocado letras acentuadas en un .bat y se topan con que al ejecutarlo, este les muestra otro caracter. Si son como yo que le doy importancia a la buena ortografía, imagino que no se conformarán con quitar el acento y dejar la palabra mal escrita.
En vista de eso, pasé mucho tiempo buscando la solución, y lo que pude encontrar por la red es que esto se debe a que el código ASCI de Windows no corresponde al de Batch. Sugerían usar un programa que mostraba las equivalencias entre ambos entornos, para de ese modo hallar los caracteres correctos. Con todo, el programa no me sirvió, así que seguí buscando y al fin hallé la manera.
He aquí los símbolos y caracteres que no se corresponden en Batch, y sus equivalencias:
Código:
Win=Batch
á=
é=‚
í=¡
ó=¢
ú=£
Á=µ
É=
Í=Ö
Ó=à
Ú=é
ü=
Ü=š
ñ=¤
Ñ=¥
¡=
¿=¨
Esos son los que me dieron problemas, pues en algunos diálogos los necesitaba.
Quiero que tengan en cuenta que aunque parece que me faltó colocar la equivalencia de á para batch no es así; en batch hay que usar ese espacio en blanco (que no es el mismo que se obtiene de la tecla TAB) para que muestre la á al ejecutar el código.
Otro detalle es el primer signo de admiración "¡"; en batch es una línea parecido a un guión, solo que no sé por qué aquí no se vé. Pero copien todo eso y guárdenlo en un .txt y verán que sale.
Yo particularmente los tengo en un .txt, y cada vez que los necesito los busco allí, los copio y los pego en el code.
Por último, si alguna vez tienen problemas con estos caracteres, pueden ejecutar esta línea en cmd:
Código:
echo áéíóúÁÉÍÓÚüÜñÑ¡¿ >c:\Caracteres.txt
Y así guardarán los caracteres equivalentes de batch en un archivo de texto.
Bueno, esto era todo. Espero de verdad que a muchos les sirva. Yo quise conseguir esta ayuda antes pero ni con google pude hallarla. Así que ahora que la tengo la comparto, siguiendo el buen ejemplo de todos los miembros del foro.