set / p con espacios en valor variable
Quería hacer un editor de texto básico por lotes y estoy usando set / p para obtener la entrada del usuario y escribirlo en un archivo.
Cuando escribo algo como "hola" o "hola" funciona bien, pero tan pronto como escribo algo con un espacio y otro carácter después de eso, como "hola mundo", la ventana se cierra.
Mi código fue:
set /p append=Write what you want to append:
Entonces intenté:
set /p "append=Write what you want to append: "
que encontré en línea, pero no funcionó.
pausa no es de ninguna ayuda porque el programa se bloquea tan pronto como presiono enter.
¡Ayuda!
Aquí está el código completo:
:append
set /p "append=Write what you want to append: "
if %append%==return (
cls
goto start
)
echo %append% >> %filename%
goto append
:override
cls
echo Name: %filename%
set /p override="Write new content: "
echo %override% > %filename%
pause
cls
goto start
:writefile
echo.
set /p filename=Write file name.extension:
choice /c AO /m "Append to file or override? "
if %ERRORLEVEL%==1 (
cls
echo Name: %filename%
goto append
) else (
goto override
)