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.
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...
Bueno warlock45 , hacer eso en *.vbs (al fin y al cabo sigue siendo scripting :P) deberías de seguir el siguiente codigo
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í
echo msgbox "esto es una prueba" >> c:\unarchivo.vbs
Espero te sirva de ayuda ;)
Saludos
*.vbs es Visual Basic?
;D
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
tienes algun manual de vbs ?
muchas gracias ^^
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
Cita de: 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...
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
CitarMe podrian explicar que es el "directory listing"
Me imagino que hace referencia a "Dir" para listar archivos en una carpeta
Citary el "flag"
El flag es un valor que se pasa como variable, así como "/p"
Saludos
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?
@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 /?