vbsnoobdlu
Goto Top

Variablen von VBS zu BATch

Hi erstmal, mein Name ist Daniel und bin ein VBS Anfänger,

Ich möchte in dem Script das ich hier zeige eine
BAT Datei aufrufen siehe pfadBAT
dieser möcht ich der Variable aktdat übergeben wie mache ich das

'+++++++++++++++++++++++++ VBS-Script für die Datenbank Sicherung ++++++++++++++++++++++++++  

'-------------------------------------------------------------------------------------------  
' Objekte, Constanten, Variabeln & Pfade anlegen  
  
  DIM syncflag
  pfad1 = "c:klogs"           'Pfad der Logdateien  
  pfad2 = "c:kSicherungen"    'Pfad des ZielOrdners  
  pfadBAT = "c:k  
efresh.bat"   'Pfad der BAT Datei  
  datei ="bin"                    'Name der BinLog (Welcher über Mysql Admin bestimmt wurde)  
  oname = "Sich_"&date()          'Name des Sicherungsordners  
  aktdat = date()

  const sw_showminimized=2 
  const OverwriteExisting = true 
 
  
  set shellobj = WScript.CreateObject("WScript.Shell")  
  syncflag = true
  set folder   = createObject("Scripting.FileSystemObject")  
  set akt = createObject("Scripting.FileSystemObject")  
  set cop = createObject("Scripting.FileSystemObject")  

   


'-------------------------------------------------------------------------------------------  

'-------------------------------------------------------------------------------------------  
'Erstellt einen Ordner unter c:kSicherungen  
'Name = Sich_(datum)  
   
       folder.createFolder(pfad2&oname)

'-------------------------------------------------------------------------------------------  

'-------------------------------------------------------------------------------------------  
' starten der BATch Datei für die Sicherung  

   shellobj.run pfadBAT, sw_showminimized, syncflag

'-------------------------------------------------------------------------------------------  

'-------------------------------------------------------------------------------------------  
'Eine Sicherheitskopie der Binären Logdatei mit   
'in den Ordner sichern  

  counter = 999999
  While not counter = 0
    



If counter < 10 then
  if akt.FileExists(pfad1&datei&"."&"00000"&counter) = true then  
   
   akt.GetFile(pfad1&datei&"."&"00000"&counter)  
   cop.CopyFile pfad1&datei&"."&"00000"&counter, pfad2&oname&"/"&datei&".00000"&counter, OverwriteExisting  
   counter = 1
  End If
  
ElseIf counter < 100 then
  'MsgBox("bin"&"."&"0000"&counter)  
   if akt.FileExists(pfad1&datei&"."&"0000"&counter) = true then  
   
   akt.GetFile(pfad1&datei&"."&"0000"&counter)  
   cop.CopyFile pfad1&datei&"."&"0000"&counter, pfad2&oname&"/"&datei&".0000"&counter, OverwriteExisting  
   counter = 1
  End If
ElseIf counter < 1000 then
  if akt.FileExists(pfad1&datei&"."&"000"&counter) = true then  
   
   akt.GetFile(pfad1&datei&"."&"000"&counter)  
   cop.CopyFile pfad1&datei&"."&"000"&counter, pfad2&oname&"/"&datei&".000"&counter, OverwriteExisting  
   counter = 1
  End If
ElseIf counter < 10000 then
  if akt.FileExists(pfad1&datei&"."&"00"&counter) = true then  
   
   akt.GetFile(pfad1&datei&"."&"00"&counter)  
   cop.CopyFile pfad1&datei&"."&"00"&counter, pfad2&oname&"/"&datei&".00"&counter, OverwriteExisting  
   counter = 1
  End If
ElseIf counter < 100000 then
  if akt.FileExists(pfad1&datei&"."&"0"&counter) = true then  
   
   akt.GetFile(pfad1&datei&"."&"0"&counter)  
   cop.CopyFile pfad1&datei&"."&"0"&counter, pfad2&oname&"/"&datei&".0"&counter, OverwriteExisting  
   counter = 1
  End If 
END If
 
    counter=counter -1
    Wend

Danke
Mit freundlichem Gruß
Daniel
Änderungen:
- 02.05.2007 13:17 Uhr: Beitrag von "Off Topic" nach "Entwicklung => Programmieren".
- 02.05.2007 13:18 Uhr: Beitrag inhaltlich nicht verändert! Aber Codeblock gebildet.

Dani (Moderator)

Content-ID: 57700

Url: https://administrator.de/contentid/57700

Ausgedruckt am: 22.11.2024 um 06:11 Uhr

bastla
bastla 04.05.2007 um 21:11:28 Uhr
Goto Top
Hallo Daniel und ein sehr verspätetes Willkommen im Forum!

Dein Beitrag war die längste Zeit im "Off Topic"-Bereich "vergraben" und mir daher bis jetzt nicht aufgefallen.

Soferne ich Dich richtig verstanden habe, könntest Du der Batchdatei beim Aufruf den Inhalt der Variablen "aktdat" so mitgeben:
shellobj.run pfadBAT & " " & aktdat, sw_showminimized, syncflag  
Nur als Anmerkung: In Batch selbst wäre das aktuelle Datum über die Variable %date% auch direkt verfügbar. Sollte bei Deiner Windows-Version dabei auch der Wochentag ausgegeben werden, könntest Du %date:~3% verwenden, um diesen wegzulassen.

Grüße
bastla
VBSnoobDlu
VBSnoobDlu 29.11.2007 um 09:02:56 Uhr
Goto Top
Jop danke hat alles geklappt
gruß