batch-file-es Windows
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Solución
De acuerdo con un set /? de CMD.exe alemán set /? , tendríamos que citar operaciones
aritméticas. Aquí hay un ejemplo.
Anterior
set /a result=2+5*4
Resultado
set /a result="2+5*4"
Por cierto, de acuerdo con un set /? CMD.exe en inglés set /? , se requieren comillas si los
operadores lógicos o de módulo están presentes en la expresión (aunque esto no es un paso
obligatorio ).
Personaje de escape inadecuado
En esta pregunta de desbordamiento de pila , el usuario txtechhelp encontró un problema con el
carácter ^ que podría causar un problema de seguridad.
Porque
anyInvaildCommand ^
Nota: ¡Asegúrate de que el caret ( ^ ) sea el último carácter! ¡Cualquier CR\LF adicional no
funcionará en absoluto!
El caret busca al siguiente personaje para escapar. Sin embargo, ya no hay más personajes
disponibles para escapar, por lo que cmd recorre infinitamente, buscando un personaje para
escapar. En este proceso de "bucle", cmd.exe consumirá la memoria de su computadora. Y poco a
poco devorando toda la memoria, llevando la computadora a las rodillas.
Este problema puede llevar a preocupaciones de seguridad más graves, ya que uno podría
ingresar el código en la computadora desbloqueada.
Soluciones
• Usar la página de códigos UTF-16 podría resolver este problema. Solo UTF-8 o ASCII
causaría el error.
• Asegúrese de que haya un CR\LF adicional en el archivo, o simplemente no use caret al final
del archivo.
Extra
https://riptutorial.com/es/home 40