Jag är inte sådär kanonduktig på bat-filer men du lär behöva en räknare som räknar hur många filer som kopieras och sedan avbryter när den nått 50. Däremot så skulle det vara kanonlätt att implmentera det som ett VBScript.
set fso = createobject("scripting.filesystemobject")
set folder = fso.getfolder("c:\mapp1")
i = 0
for each file in folder.files
file.move "c:/mapp2"
if i = 49 then exit for
i = i + 1
next
set folder = nothing
set fso = nothing
Spara som .vbs och schemalägg i Windows, att köras var femte minut.
vill du alltid kopiera de 50 första filerna av de där 20 000? eller ska den först kopiera 1-50, sedan 51-100, o.s.v.?
Ja, jag glömde nämna det med mitt script, det går inte efter när filerna skapades eller nåt sånt, utan bara helt enkelt hur sorteringsordningen är satt i mappen i Windows (tror jag).
Spelar ingen roll i vilken ordning, bara det blir endast 50 åt gången, då programmet som ska äta upp filerna e lite knas och pallar inte med mer än 50 åt gången.
Spelar ingen roll i vilken ordning, bara det blir endast 50 åt gången, då programmet som ska äta upp filerna e lite knas och pallar inte med mer än 50 åt gången.
Ja, då funkar ju mitt script alldeles utmärkt. Under förutsättning att du inte har en "tillväxt" av filer på mer än 50 per varje 5:e minut, i snitt.
@echo off
cls
echo -----------------------------------
echo Flyttar filer var 5e min
echo -----------------------------------
goto start
:start
copy c:\mapp1\*.* c:\mapp2
del c:\mapp1\*.* /Q
ping localhost -n 300 > null
goto start
Den där fungerar ju inte alls som det är tänkt, eftersom den aldrig tar hänsyn till antalet filer. Om det är 100000 filer i mappen så försöker den ju kopiera alla på en gång och sen ta bort dem allihopa ur källmappen.
Jag håller med föregående talare, det känns lite risky..
Spelar ingen roll i vilken ordning, bara det blir endast 50 åt gången, då programmet som ska äta upp filerna e lite knas och pallar inte med mer än 50 åt gången.
Inte bättre och kolla vad detta beror på?
Är väl bara första gången det kommer ta tid?
För jag antar det inte fylls på med mer än 50filer var 5e min.
Robocopy ingår i Windows Server 2003 Resource Kit Tools....finns att tanka hem på ms hemsida. Men han har ju faktiskt fått en alldeles utmärkt lösning i vbscript....
Hej!
Jag har ett liknande problem. Skulle vilja göra en batchfil som rensar bort de äldsta filerna i en mapp, då den överskrider en viss storlek. Är det någon som har en idé hur man kan göra?
:q
266 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9