¿Cómo puedo recuperar la entrada del usuario en un archivo .bat?

4

Estoy usando el comando dir /AD /B "\\computerName\users\" >> user_export.log

¿Es posible crear un archivo por lotes que le pide al usuario que ingrese el Nombre de la computadora y luego, cuando el usuario final ingresa el nombre de la computadora para que se ingrese en el nombre UNC mencionado anteriormente, entoncesdir /AD /B "\\**INPUT VALUE ENTERED HERE**\users\"

Esperemos que esto tenga sentido.

Kevin Dodd
fuente
1
Relacionado: stackoverflow.com/q/9435607/516290
Diogo

Respuestas:

6

Será mejor aislar la entrada del usuario del uso de la entrada en un nombre UNC. Entonces podría ayudar con la entrada del usuario:

Simplemente use el comando set para obtener la respuesta del usuario:

set /P response=INPUT VALUE PLEASE
dir /A/D /B "\\%response%\users\"

Puedes escribir indicaciones más sofisticadas como

set /P response="INPUT VALUE HERE > "

pero los ticks dobles no son necesarios para el comando set. Deben ignorar el carácter especial >. Además, se mejorará la visibilidad de los caracteres de espacio en la solicitud.

harper
fuente
Debido al uso del carácter ">" en la solicitud, las comillas son necesarias para evitar un error de sintaxis (probablemente porque parece una redirección de salida al programa shell).
Martineau