VBS oder Batch um eine Datei in Unterordner zu verschieben
Hallo zusammen,
ich bin neu hier und kenne mich leider im Bereich VBS und Batch nicht so gut aus.
Ich habe in der Suche nicht wirklich etwas gefunden was ich für mich verwenden könnte.
Mein Problem ist folgendes:
Ich habe eine Datei (*.JNT) die als Vorlage dient und im Ordner "Aufträge" liegt.
In den Ordner "Aufträge" kommen jeden Tag neue Unterordner mit Auftragsnummer hinzu.
Wie kann ich die Vorlagen-Datei automatisch in die Unterordner legen lassen?
Also vorher natürlich überprüfen ob diese schon existiert und wenn nicht, dann als Kopie dort einfügen.
Geht das evtl. mit einem zeitlichen Intervall (alle 10 Minuten)?
Vielen Dank und freundliche Grüße
MrRoyal
ich bin neu hier und kenne mich leider im Bereich VBS und Batch nicht so gut aus.
Ich habe in der Suche nicht wirklich etwas gefunden was ich für mich verwenden könnte.
Mein Problem ist folgendes:
Ich habe eine Datei (*.JNT) die als Vorlage dient und im Ordner "Aufträge" liegt.
In den Ordner "Aufträge" kommen jeden Tag neue Unterordner mit Auftragsnummer hinzu.
Wie kann ich die Vorlagen-Datei automatisch in die Unterordner legen lassen?
Also vorher natürlich überprüfen ob diese schon existiert und wenn nicht, dann als Kopie dort einfügen.
Geht das evtl. mit einem zeitlichen Intervall (alle 10 Minuten)?
Vielen Dank und freundliche Grüße
MrRoyal
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 308472
Url: https://administrator.de/contentid/308472
Ausgedruckt am: 22.11.2024 um 09:11 Uhr
1 Kommentar
Hallo MrRoyal,
ungetestet etwa so:
*.vbs
Das Script prüft einmal pro 1 Sekunde (Interval) ob ein neues Verzeichnis erstellt wurde. Bestehende Verzeichnisse bleiben unbetrachtet. Die Konstanten am Anfang musst du entsprechend anpassen. Für Path muss ein absoluter Pfad (incl. Laufwerk) angegeben werden.
Grüße
rubberman
ungetestet etwa so:
*.vbs
Option Explicit
Const Path = "C:\irgendwo\Aufträge"
Const Template = "example.jnt"
Const Interval = 1
Dim objFSO, objWMIService, objEvent, colEvents, sDrive, sFolder
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
sDrive = objFSO.GetDriveName(Path)
sFolder = Replace(Mid(Path, 3) & "\", "\", "\\", 1, -1, vbTextCompare)
Set colEvents = objWMIService.ExecNotificationQuery( _
"SELECT * FROM __InstanceCreationEvent" & _
" WITHIN " & CStr(Interval) & _
" WHERE Targetinstance ISA 'CIM_Directory'" & _
" AND TargetInstance.Drive='" & sDrive & "'" & _
" AND TargetInstance.Path='" & sFolder & "'")
Do
Set objEvent = colEvents.NextEvent()
objFSO.CopyFile objFSO.BuildPath(Path, Template), objEvent.TargetInstance.Name & "\"
Loop
Das Script prüft einmal pro 1 Sekunde (Interval) ob ein neues Verzeichnis erstellt wurde. Bestehende Verzeichnisse bleiben unbetrachtet. Die Konstanten am Anfang musst du entsprechend anpassen. Für Path muss ein absoluter Pfad (incl. Laufwerk) angegeben werden.
Grüße
rubberman