1 votos

Pasar la variable al CMD

He configurado un script y probado que funciona con la entrada del usuario a través de set /p pero ahora quiero pasar esa variable automáticamente al cmd.

script con entrada del usuario:

@ECHO OFF

set /p id="Enter Rom: "

start /d "G:\Emulators\N64\Project64" Project64.exe "G:\Emulators\N64\Roms\%id%"

Lo que quiero pasar al CLI:

C:\WINDOWS\system32>set id = "Goldeneye 007.v64" & "C:\script.cmd"

0 votos

Entonces, ¿un usuario ejecutará el script y siempre introducirá el valor entonces? Sólo quiero asegurarme de que necesitas que el valor de la variable establecida por el usuario sea el que utiliza el resto del lote script, ¿correcto?

0 votos

No, quizás debería haberme explicado mejor, busco crear un cmd "universal" al que pueda pasarle el nombre de la ROM antes de ejecutar el CMD

0 votos

Sólo he probado con la entrada del usuario, ahora quiero que sea automatizado sin la entrada del usuario en absoluto

1voto

PJ Mahoney Puntos 889

Puede utilizar argumentos del lote y pasar el valor de la ROM a la llamada del lote script al ejecutarlo como C:\script.cmd "<Value Argument>" .

En lugar de utilizar set /p id="Enter Rom: " utilice set id=%~1 y eso es todo lo que se necesita para permitir que el primer argumento pasado al script se utilice para el valor para establecer el id variable.

Lote script Ejemplo

@ECHO OFF

set id=%~1

start /d "G:\Emulators\N64\Project64" Project64.exe "G:\Emulators\N64\Roms\%id%"

Argumento pasado al lote script Ejemplo

C:\script.cmd "Goldeneye 007.v64"

Más recursos

1 votos

Esto es EXACTAMENTE lo que necesitaba, voy a hacer un escrito si su interés en el "objetivo" final, es utilizar Steam ROM Manager para introducir accesos directos en vapor para lanzar emulador w / rom, pero también tengo que lanzar xpadder para asignar atajos de teclado adicionales.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: