Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: willdoxero en 18 Mayo 2014, 04:43 am



Título: Duda con comando EDLIN
Publicado por: willdoxero en 18 Mayo 2014, 04:43 am
Hola a todos, aquí una duda:

Estoy usando EDLIN para modificar una línea en un archivo .bat
pero al abrir el nuevo archivo me deja un espacio en blanco al final de la línea que se editó.
Cómo puedo evitar el espacio en blanco al final de la línea?

Código
  1.  
  2. echo Indicar nombre de ruta.
  3. echo.
  4. set /p "cabecera=Destino: "
  5. ::suponiendo ruta= 127.0.0.1
  6. echo.
  7. (
  8. echo 13
  9. echo set ruta=%cabecera%
  10. echo e
  11. ) | edlin /b c:\scripts\archivo.bat
  12.  
  13.  


Al abrir archivo queda un espacio en blanco (al final del .1), ejemplo:

set ruta=127.0.0.1

El problema es que la variable la asocio con otra y al querer entrar a la ruta completa no la identifica por el espacio en blanco.
ejemplo: \\127.0.0.1 (espacio)\mi_carpeta

alguna sugerencia? :huh:
Gracias!!


Título: Re: Duda con comando EDLIN
Publicado por: Zomkar en 20 Mayo 2014, 03:53 am
Sé que para el script es necesario usar pipes ( los |) pero en realidad podrias reproducir el uso de variables en cmd (con set =xxx) para ver si el problema es que usas pipes y por culpa de eso se añade ese espacio.

Si el problema es ése seguro que se puede arreglar, bien arreglando el problema en si o borrando el caracter extra.

Es que se me haría extraño que un programa de edicion como el que comentas haga eso él solo (que podría ser).


Título: Re: Duda con comando EDLIN
Publicado por: willdoxero en 20 Mayo 2014, 08:15 am
Gracias!! creo que el uso de pipes sí llega a ser un problema y guarda el espacio, lo que hice fue lo siguiente:

Después de usar EDLIN, usar una nueva variable con la ruta completa pero indicándole que ignore el espacio en blanco de la siguiente forma:

Código
  1. :: Al salir de EDLIN
  2. set ruta=%cabecera: =%\Carpeta_compartida
  3.  

:: Con esto se sutituye el espacio por nada. :D

Saludos a todos!!  ;)