Ms-Dos - Paso de parametros con espacio en blanco

 
Vista:

Paso de parametros con espacio en blanco

Publicado por lici78700 (2 intervenciones) el 28/02/2004 23:12:26
Hola
Necesito pasar el nombre de un archivo a un proceso por lotes, pero el nombre del archivo incluye espacios, por ejemplo: Archivo Texto.txt,
intente el uso de comillas y funciona pero el valor del parametro (%1) también incluye las comillas, alguien sabe de otra alternativa?
Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Paso de parametros con espacio en blanco

Publicado por Hurricane (11 intervenciones) el 21/04/2004 14:02:54
Te puedo ayudar si el parámetro es único. Vamos a reconstruir el parámetro respetando los espacios en blanco (sin dar las comillas):

SET PARAM=%1
:LOOP
SHIFT
IF %1.==. GOTO JUMP
ST PARAM=%PARAM% %1
GOTO LOOP
:JUMP
REM Aquí llega la variable PARAM con toda la cadena ingresada
REM como parámetro, respetando los espacios en blanco.

Espero que te sea de utilidad. Saludos ;-)

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Paso de parametros con espacio en blanco

Publicado por Hurricane (11 intervenciones) el 21/04/2004 14:04:08
Fé de errata:
Dice: ST PARAM=%PARAM% %1
Debe decir: SET PARAM=%PARAM% %1

Saludos ;-)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Paso de parametros con espacio en blanco

Publicado por Leodez (1 intervención) el 07/01/2017 15:23:11
Si solo esperas un parámetro y el mismo tiene espacios, puedes usar %* que te devuelve todos los parámetros concatenados.

1
2
3
4
5
6
7
8
9
Ejemplo (Mostrar.BAT):
@Echo Off
IF "%1" == "" GOTO FaltaParam
Echo La carpeta es: "%*"
GOTO Fin
:FaltaParam
Echo Falta el parámetro, ejemplo:
Echo   Mostrar C:\Mi Carpeta\Sub Carpeta
:Fin
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar