Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Shuffle66 en 18 Julio 2013, 10:41 am



Título: Eliminar espacios lineas archivo de texto
Publicado por: Shuffle66 en 18 Julio 2013, 10:41 am
Hola a todos.

Necesito ayuda referente a lo siguiente:

Después de ejectuar un archivo .bat, obtengo un archivo de texto con un número indeterminado de lineas, el problema es que no logro eliminar los espacios que contienen dichas lineas

Ejemplo:
Código:
usuario1(espacio),1(espacio)
usuario2(espacio),2(espacio)
usuario3(espacio),3(espacio)

Desearía que quedase asï:

Código:
usuario1,1
usuario2,2
usuario3,3

Gracias de antemano por qualquier respuesta.


Título: Re: Eliminar espacios lineas archivo de texto
Publicado por: Eleкtro en 18 Julio 2013, 10:54 am
Código
  1. @Echo OFF
  2.  
  3. FOR /F "Usebackq Tokens=*" %%# IN ("Archivo.txt") DO (
  4. Set "Line=%%#"
  5. Call Echo %%LINE: =%%
  6. )
  7.  
  8. Pause&Exit

Saludos


Título: Re: Eliminar espacios lineas archivo de texto
Publicado por: Shuffle66 en 18 Julio 2013, 11:02 am
...hola, he probado el código y el cmd muestra las lineas modificadas correctamente, echo de menos el poder guardar el resultado en un nuevo archivo de texto.

Gracias.


Título: Re: Eliminar espacios lineas archivo de texto
Publicado por: Eleкtro en 18 Julio 2013, 11:06 am
echo de menos el poder guardar el resultado en un nuevo archivo de texto.

Es algo muy sencillo de hacer sin dificultad alguna, lee un poco aquí:

By Elektro H@cker - Tutorial extendido de aprendizaje Batch

4.6 Operadores de desplazamiento lógico (o Redireccionamiento) (http://foro.elhacker.net/scripting/tema_bloqueado_hasta_finalizar_el_tuto_tutorial_extendido_de_aprendizaje_batch-t375135.0.html;msg1797941#msg1797941)


Saludos


Título: Re: Eliminar espacios lineas archivo de texto
Publicado por: Shuffle66 en 18 Julio 2013, 11:11 am
...ciertamente, he modificado el código para obtener un archivo resultante:
Código
  1. @Echo OFF
  2.  
  3. FOR /F "Usebackq Tokens=*" %%# IN ("myfile.txt") DO (
  4. Set "Line=%%#"
  5. Call Echo %%LINE: =%% >>new.txt
  6. )
  7. Pause&Exit

..tan solo observo que al final de cada linea me mantiene el espacio en blanco.


Título: Re: Eliminar espacios lineas archivo de texto
Publicado por: Eleкtro en 18 Julio 2013, 11:13 am
observo que al final de cada linea me mantiene el espacio en blanco.

Antes de nada, tienes que usar el tag para insertar código, en mi firma tienes como hacerlo.

Código
  1. Call Echo %%LINE: =%% >>new.txt

Estás dejando un espacio en blanco antes del operador, puedes eliminarlo,
un saludo


Título: Re: Eliminar espacios lineas archivo de texto
Publicado por: Shuffle66 en 18 Julio 2013, 11:30 am
....con el siguiente código:

Código:
@Echo OFF
 
FOR /F "Usebackq Tokens=*" %%# IN ("myfile.txt") DO (
Set "Line=%%#"
Call Echo %%LINE: =%%
)>blanks.txt
Pause&Exit

...obtengo solo la última linea del archivo original.


Título: Re: Eliminar espacios lineas archivo de texto
Publicado por: Shuffle66 en 18 Julio 2013, 11:48 am
Solucionado:

Código
  1. @Echo OFF
  2.  
  3. del blanks.txt
  4.  
  5. FOR /F "Usebackq Tokens=*" %%# IN ("myfile.txt") DO (
  6. Set "Line=%%#"
  7. Call Echo %%LINE: =%% >>blanks.txt
  8. )

Gracias.