Ms-Dos - variable = leer txt pero sin espacios en blanco

 
Vista:
sin imagen de perfil

variable = leer txt pero sin espacios en blanco

Publicado por nicolas (9 intervenciones) el 17/01/2016 20:52:13
Buenas noches,

estoy leyendo un archivo txt (c_date.txt) que contiene un digito como este: 20151022_143130 (siempre de 15 caracteres contando el guion bajo). A veces despues del digito tengo espacios en blanco o incluso saltos de linea, pero necesito que la variable solamente almacene los 15 digitos, ya que luego utilizo la variable para buscar ficheros con ese nombre.

Con este codigo me almacena en la variable c_date todo el contenido del archivo c_date.txt

1
2
3
4
5
6
7
set c_date
IF EXIST c_date.txt (
	<"c_date.txt" set /p "c_date="
	set "c_date:=">>log.txt
) ELSE (
	goto error1
)

Qué podría hacer? Podría leer directamente los 15 dígitos y asignarlo a la variable ya "limpio"? O tendría que crear otra varible para sacar los espacios en blanco?

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
Imágen de perfil de Antoni Masana
Val: 1.419
Oro
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

variable = leer txt pero sin espacios en blanco

Publicado por Antoni Masana (811 intervenciones) el 18/01/2016 11:51:29
Esto toma los quince primeros caracteres de la primera linea de datos e ignora los espacios y las lineas en blanco

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@ECHO OFF
SET c_date=
IF NOT EXIST c_date.txt  GOTO error1
FOR /F %%a IN (c_date.txt) DO call :Asignar %%a
ECHO.Valor: - %c_date% -
GOTO :EOF
 
:Asignar
   IF NOT (%c_date%) == () GOTO :EOF
   SET c_date=%1
   SET c_date=%c_date:~0,15%
   GOTO :EOF
 
:Error1
   ...

De este ejemplo solo toma la parte que te interesa.

NOTA IMPORTANTE: Los puntos representan espacios representado así para hacerlo visible

1
2
3
4
5
6
·······
················
····20151231_145628···jujutjgjkg
····kjgkdgj
···
··

Resultado de la ejecución del BAT

1
Valor: - 20151231_145628 -

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

variable = leer txt pero sin espacios en blanco

Publicado por nicolas (9 intervenciones) el 22/01/2016 10:25:40
uau! creo que perfecto además parece que me servirá para validar si hay datos en el fichero... voy a probar!!!
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