Avatar billede rjj100 Nybegynder
20. februar 2003 - 09:46 Der er 3 kommentarer og
2 løsninger

Automatisk flytning af urørte filer

Jeg skal automatisk have flyttet Mapper inclusiv filer på en 2000 server til en anden mappe på samme server, hvis filerne ikke har været i brug i 3 mrd.
Dvs. at en mappe med undermapper skal flyttes hvis ingen af filerne i mappen er blevet brugt inden for 3mrd.

Hvordan gør jeg det?

Jeg er rimelig nybegynder i ASP men måske, nogle hint til hvor jeg skal begynde.

Mvh

Rene
Avatar billede longshanks Nybegynder
20. februar 2003 - 10:00 #1
Du skal bruge fil system objektet til at flytte filer og mapper!!

f.eks.
Set fso = CreateObject("Scripting.FileSystemObject")
fso.moveFolder "c:\Diverse", "c:\inetpup\wwwroot\"
Avatar billede eagleeye Praktikant
20. februar 2003 - 10:01 #2
Du skal havde gang i filesystemobject FSO, http://www.w3schools.com/asp/asp_ref_filesystem.asp

Du skal så lave en stump koden som looper gennem alle filerne i en folder og tjekker om deres dato for last accessed er størrer end 3 måneder.

Eks som lister alle filer i en folder:
http://www.aspfaqs.com/aspfaqs/ShowFAQ.asp?FAQID=90

For en fil har man så et fil obejct hvor man har disse data:
http://www.w3schools.com/asp/asp_ref_file.asp for at se hvornår filen sidts er accesed så brug: .DateLastAccessed

Du skal bruge DateDiff og tkekke på antal mådeder mellem .DateLastAccessed og idag Date()




<%
  'Create the FileSystemObject object
  Dim objFSO
  Set objFSO = Server.CreateObject("Scripting.FileSystemObject")

  'Obtain an folder object instance for a particular directory
  Dim objFolder
  Set objFolder = objFSO.GetFolder("C:\FooBar\Blah\")

  'Use a For Each ... Next loop to display the files
  Dim objFile
  For Each objFile in objFolder.Files
   
    if dateDiff("m" objFile.DateLastAccessed, date()) >= 3 then
      'Flyt filen
    end if
  Next
%>
Avatar billede longshanks Nybegynder
20. februar 2003 - 10:02 #3
Måske skal du flytte alle filerne først hvis du ikke må flytte en mappe med filer i, via...
Set fso = CreateObject("Scripting.FileSystemObject")
fso.moveFile "c:\diverse\minfil.txt","c:\inetpup\wwwroot\minfil.txt"
Avatar billede eagleeye Praktikant
20. februar 2003 - 10:02 #4
For at flytte filen bruger du så FSO movefile eks her:
http://www.w3schools.com/asp/met_movefile.asp
Avatar billede eagleeye Praktikant
20. februar 2003 - 10:04 #5
der mangler et , i denne linie:
if dateDiff("m" objFile.DateLastAccessed, date()) >= 3 then

Sådan her:
if dateDiff("m", objFile.DateLastAccessed, date()) >= 3 then
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester