elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Asignar letra USB a variable (batch)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Asignar letra USB a variable (batch)  (Leído 3,262 veces)
keypro

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Asignar letra USB a variable (batch)
« en: 25 Mayo 2016, 14:23 pm »

Buenas, tengo múltiples herramientas en mi USB, las cuales suelo ejecutar con comandos de batch para volcar los resultados a lugares específicos, el problema es que otros equipos le asignan otra letra, haciendo que todas las rutas estén mal, para ello he creado 2 scripts, el primero vuelca la letra de la unidad donde se ejecuta a un .txt con:                        echo %~d0 > Letra.txt
Y el segundo vuelca los resultados del .txt a una variable:     set /p varr= < Letra.txt

Si ahora ejecuto la variable %varr%  como:   echo %varr%
me muestra la unidad correctamente, sin embargo al introducirla en una ruta:

start %varr%\ATk\antivir\DrWeb.exe /stext %var%\ATk\antivir\Amenazas Detectadas.txt

En vez de ejecutar el programa en cuestión, meramente me abre una carpeta emergente a la unidad %varr% , alguien sabe cómo podría funcionar? o una forma mejor de hacer esto mismo xD, gracias por su tiempo ;)


En línea

jalbtercero

Desconectado Desconectado

Mensajes: 80


Ver Perfil
Re: Asignar letra USB a variable (batch)
« Respuesta #1 en: 25 Mayo 2016, 19:28 pm »

Creo que necesitas modificar el codigo de tus scripts y poner:
Código
  1. @echo off
  2. echo %~d0%~p0
  3.  

La segunda linea te devuelve la ruta desde la que se esta ejecutando el batch asi podras ejecutar los comandos desde cualquier ruta:

Por ejemplo: C:\users\Usuario\desktop\

Código
  1. @echo off
  2. rem Aqui por ejmplo copiamos un archivo txt que tenemos en la carpeta del batch a la
  3. rem Carpeta del usuario, podras hacerlo desqde cualquier ruta
  4. copy %~d0%~p0\copia.txt C:\users\Usuario
  5.  


« Última modificación: 25 Mayo 2016, 19:31 pm por jalbtercero » En línea

keypro

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: Asignar letra USB a variable (batch)
« Respuesta #2 en: 27 Mayo 2016, 10:02 am »

Perfecto, es justo lo que necesita va, muchas gracias :D
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines