Dieser Beitrag wurde vor über 3 Monaten veröffentlicht. Die darin beschriebenen Informationen sind mit Vorsicht zu geniessen, da sie bereits veraltet oder nicht mehr gültig sein könnten. Solltest du von Neuerungen oder Verbesserungen wissen, so freue ich mich über einen klärenden Kommentar.Heute hatte ich wieder einmal das “Vergnügen” mich mit VBS abzumühen zu beschäftigen. Da ich mich in einer Bash eher zu Hause fühle, bin ich nicht das grösste Genie in VBS und muss stets wieder alles nachsehen.
Somit folgen hier nun ein paar Snippets für die Zukunft!
Prüfen, ob Ordner existiert und falls nicht, diesen erstellen:
'check if folder exists
Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FolderExists("D:\backup") Then
Else
'create the folder D:\backup
Set objFolder = objFSO.CreateFolder("D:\backup")
End If
Einige Dateien kopieren:
Const OverwriteExisting = True
Set objFSO = CreateObject("Scripting.FileSystemObject")
'copying files from share to specific location
objFSO.CopyFile "\\SERVER02\share$\config.ini" , "C:\Program Files\ProgrammX" , OverwriteExisting
objFSO.CopyFile "\\SERVER02\share$\script.vbs" , "C:\Program Files\ProgrammX\script" , OverwriteExisting
Oder aber einen Scheduled Task anlegen und timen auf täglich um 22:30 Uhr:
'create Scheduled task for backup.vbs
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set objNewJob = objWMIService.Get("Win32_ScheduledJob")
errJobCreated = objNewJob.Create ("cscript.exe //nologo C:\Program Files\ProgrammX\script\script.vbs", "********223000.000000+120", True, 1 OR 2 OR 4 OR 8 OR 16 OR 32 OR 64, , False, JobID)
Dazu noch eine kurze Erklärung:
- Die ******** stehen für ein Datum ala YYYYMMDD
- die 223000.000000 für die Uhrzeit 22:30
- und die +120 für meine Zeitzone GMT+2 (60x +2).
- 1,2,4,8,16,32 und 64 stehen für die Tage Montag (1) bis Sonntag (64).
- Das “True” stellt eine regelmässige
- und das “False” eine Ausführung im Hintergrund sicher.
Zum Schluss muss noch ein freigegebener Ordner samt NTFS-Freigaben her. Hierfür habe ich nichts VBS-spezifisches auf die Reihe gekriegt, da habe ich mich der Shell bedient:
'create share and set permissions
Set wshShell = WScript.CreateObject("WSCript.shell")
wshshell.run "net share share$=D:\share /GRANT:hans,FULL"
wshshell.run "cacls D:\share /T /E /G hans:F"
set wshshell = nothing
Das war’s auch schon – auf das diese Snippets mir oder dir irgendwann mal helfen mögen!

Neuer Blogbeitrag: VBS Snippets für Freigaben, NTFS Berechtigungen und Scheduled Tasks http://t.co/rJXZJYzy
VBS Snippets für Freigaben, NTFS Berechtigungen und Scheduled Tasks | Bits, Bytes and my 5 cents – http://t.co/mbJ3PqMU