Jump to content

VB Script - Dateien aus Ordner verschieben


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo!

 

Hab ein kleines Problem...sicher kein Thema für euch!

Und zwar soll ich ein VB-Script schreiben dass alle Dateien aus einem Ordner verschiebt (auf ein anderes Laufwerk) wenn der Festplattenspeicher weniger als X ist (x = beliebige zahl ob in GB oder MB is vorerst mal egal)

 

Ich hab hier ein tolles Windows Scripting buch aber ich steig da einfach nicht durch und gegoogelt hab ich auch schon 2 wochen lang aber ich find einfach nix!

Ich war wohl auf Klo als Gott die Programmierkenntnisse verteilt hat... ;)

 

Für eure hilfe wär ich euch sehr dankbar

 

peace

MurphY

Link zu diesem Kommentar

Vielleicht kann Dir das weiterhelfen...

Das Script verschiebt alle Dateien aus einem Ordner die älter sind als 15 Tage.

 

-----------------

Dim fso, files, file, datei

datei=date-15

 

 

 

Set fso = CreateObject ("scripting.FileSystemObject")

set files = fso.getFolder("C:\Temp\test1").files

For Each file In files

 

if file.datelastmodified < datei Then

fso.MoveFile file, "C:\Temp\test2\"

End If

 

 

next

------------------------

Link zu diesem Kommentar

so jetzt hab ich noch ein anderes problem...ich hab mir jetzt vorgenommen täglich den speicherplatz von einem pc im netzwerk (aber nicht in der domäne) auszulesen...da der rechner nicht in der domäne hängt hab ich natürlich keinen zugriff darauf (also ich kanns nur lokal ausführen)!

 

jetzt müsst ich halt wissen wie ich die benutzerkennung (benutzer + passwort) in dieses script einbaue!

 

für das auslesen des speicherplatzes auf c: hab ich das normale FreeSpace script verwendet!

 

peace

MurphY

Link zu diesem Kommentar

also das script zum ordnergröße auslesen funktioniert schonmal nicht...sagt er erwartet eine ( in zeile 4...da ich den genauen fehler nicht kenne kann ichs auch nicht lösen...

hatte das script meinem chef vorgelegt der meinte er will das so nicht haben!

 

er will jetzt plötzlich folgendes: wenn der festplattenspeicher unter x geht dann soll er die ältesten dateien aus ordner y löschen bis der speicher wieder passt...

 

das auslesen des festplattenspeichers hab ich ja hier schonmal (gebe auch den wert in einer msgbox aus):

 

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colDisks = objWMIService.ExecQuery _
("Select * from Win32_LogicalDisk Where DeviceID = 'C:'")
For Each objDisk in colDisks
freierspeicher=objdisk.freespace /1024^3
'Wscript.Echo freierspeicher & "GB Freier Speicher"
Next

if freierspeicher < 30 then
Wscript.Echo freierspeicher &"Achtung! Speicherplatz unter 1 GB" 
else Wscript.Echo "Speicherplatz OK!"
End If

 

das ist noch nicht alles aber ich will erstmal das hinbekommen bevor ich zum nächsten schritt gehe...danach poste ich gerne das fertige script für weitere bearbeitung ;)

 

peace

MurphY

 

ps: vielen dank schonmal für eure tipps und hilfe!!!!! echt ihr rettet mir mein leben...

Link zu diesem Kommentar
so jetzt hab ich noch ein anderes problem...ich hab mir jetzt vorgenommen täglich den speicherplatz von einem pc im netzwerk (aber nicht in der domäne) auszulesen...da der rechner nicht in der domäne hängt hab ich natürlich keinen zugriff darauf (also ich kanns nur lokal ausführen)!

 

jetzt müsst ich halt wissen wie ich die benutzerkennung (benutzer + passwort) in dieses script einbaue!

 

für das auslesen des speicherplatzes auf c: hab ich das normale FreeSpace script verwendet!

 

peace

MurphY

 

Du kannst das Script doch einfach schedulen und dann die Anmeldeinformationen dort eingebnen.

Link zu diesem Kommentar

Ich würde hier folgendermaßen vorgehen. Baue in das Script ein Array ein, mit dem du das datum der datei auslesen kannst. danach einfach eine schleife die überprüft ob das nächste datum > ist, dann soll er diese speichern. sobald er alle dateien durchgegangen ist, sagst du er soll die datei löschen. arbeite am besten mit funktionsaufrufen.

 

 

pruefe()
function pruefe()
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colDisks = objWMIService.ExecQuery _
("Select * from Win32_LogicalDisk Where DeviceID = 'C:'")
For Each objDisk in colDisks
freierspeicher=objdisk.freespace /1024^3
'Wscript.Echo freierspeicher & "GB Freier Speicher"
Next
if freierspeicher < 30 then
Wscript.Echo freierspeicher &"Achtung! Speicherplatz unter 1 GB" 
'----------
loesche()
'----------

else Wscript.Echo "Speicherplatz OK!"
End If

function loesche()
'----->Hier wird die älteste Datei raus gesucht und gelöscht.
'danach die funktion pruefe starten --> pruefe()

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...