Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: warlock45 en 14 Enero 2008, 05:27 am



Título: Seleccion aleatorea de un archivo
Publicado por: warlock45 en 14 Enero 2008, 05:27 am
Bueno el asunto es el siguiente, lo que quiero hacer es seleccionar un archivo de una carpeta y copiarlo a otra, pero quiero que el archivo sea seleccionado aleatoriamente.

es posible hacerlo o habría que escribir todos los archivos en el bat para poder seleccionar uno de forma aleatoria

espero me puedan ayudar

de antemano gracias.


Título: Re: Seleccion aleatorea de un archivo
Publicado por: Alucardevil en 14 Enero 2008, 05:47 am
Estas buscando una forma de hacerlo sin el directory listing?
De ser asi, existira en algun lugar el flag para el listado de los archivos...


Título: Re: Seleccion aleatorea de un archivo
Publicado por: Novlucker en 14 Enero 2008, 09:42 am
Bueno warlock45 , hacer eso en *.vbs (al fin y al cabo sigue siendo scripting  :P) deberías de seguir el siguiente codigo

Código:
set objfso = createobject("scripting.filesystemobject")
set carpeta = objfso.getfolder("c:\carpetaorigen")

' determinamos el objeto carpeta

set archivos = carpeta.files

' devolvemos la coleccion de archivos de la carpeta

randomize()

' iniciamos la variable para que el random sea distinto cada vez

numero = int((archivos.count*rnd)+1)

' numero entero al azar entre 1 y el total de archivos de la carpeta

n = 0
For each a in archivos

' bucle por cada uno de los archivos de la carpeta

if n = numero then
objfso.copyfile a.path, "c:\carpetadestino\" & a.name
wscript.quit

' recorre cada uno de los archivos y si la variable n es igual al numero sorteado
' entonces copia el archivo a la carpeta destino, manteniendo el nombre
' y luego termina el script

else
n = n + 1

' sino, le suma 1 a la variable y vuelve a comenzar

end if
next

Como te digo, eso no es *.bat, sino *.vbs, pero también se escribe en el notepad y luego solo se la cambia la extension de *.txt por *.vbs

Lo que podrías hacer es volcar este codigo a unarchivo.vbs desde un bat, algo así

Código:
echo msgbox "esto es una prueba" >> c:\unarchivo.vbs

Espero te sirva de ayuda  ;)

Saludos


Título: Re: Seleccion aleatorea de un archivo
Publicado por: MK-Ultra en 14 Enero 2008, 12:58 pm
*.vbs es Visual Basic?

 ;D


Título: Re: Seleccion aleatorea de un archivo
Publicado por: Novlucker en 14 Enero 2008, 13:21 pm
Citar
*.vbs es Visual Basic?

Vbs = Visual Basic Script, viene por defecto con windows xp, y lo utilizan las páginas web's, así como utilizan *.js (javascript)

Es un lenguaje interpretado, no compilado como VB (Visual basic)

Por lo que solo lo escribes en el notepad y lo guardas con extension *.vbs, lo ejecutas y voila  ::)

Saludos



Título: Re: Seleccion aleatorea de un archivo
Publicado por: MK-Ultra en 14 Enero 2008, 14:47 pm
tienes algun manual de vbs ?

muchas  gracias ^^


Título: Re: Seleccion aleatorea de un archivo
Publicado por: Novlucker en 14 Enero 2008, 16:57 pm
Aqui tienes un tutorial básico de *.vbs para ir entendiendo de que va

http://foro.elhacker.net/index.php/topic,75028.0.html (http://foro.elhacker.net/index.php/topic,75028.0.html)

Googleando puedes encontrar algunos más

Saludos


Título: Re: Seleccion aleatorea de un archivo
Publicado por: warlock45 en 15 Enero 2008, 00:39 am
Estas buscando una forma de hacerlo sin el directory listing?
De ser asi, existira en algun lugar el flag para el listado de los archivos...

Me podrian explicar que es el "directory listing"
y el "flag" ???

los *.vbs los conozco pero en realidad no me manejo mucho en ellos, voy a leer el manual que dejaron para adentrarme mas en el tema, intentare utilizar el codigo y despues les cuento.

gracias


Título: Re: Seleccion aleatorea de un archivo
Publicado por: Novlucker en 15 Enero 2008, 00:44 am
Citar
Me podrian explicar que es el "directory listing"

Me imagino que hace referencia a "Dir" para listar archivos en una carpeta

Citar
y el "flag"

El flag es un valor que se pasa como variable, así como "/p"

Saludos


Título: Re: Seleccion aleatorea de un archivo
Publicado por: batman07 en 27 Enero 2008, 07:50 am
hola

me interesa saber si este tema *Seleccion aleatorea de un archivo*
se puede hacer para bat directamente

ejemplo

si tengo varios archivos en...

C:\nueva carpeta

comopuedo copiarlos todos en una carpeta nueva en esta ruta por ejemplo
C:\nueva carpeta 2\deposito

pero esto que sea en .bat se puede?


Título: Re: Seleccion aleatorea de un archivo
Publicado por: 43H4FH44H45H4CH49H56H45H en 27 Enero 2008, 18:47 pm
@echo off
set /p a= Origen
set /p q= Destino
copy %a%\*.* %q%\
pause



Se debe introducir rutas validas para oriegn por ej C:\micarpetaorigen
y para destino c:\micarpetaddestino si existe espacios blancos en la ruta usar
comillas, si no se desea agregar como variables las rutas ver opciones de copy /?