Cscript pstlocate.vbs Laufzeitfehler
Hoffe ihr könnt mir weiterhelfen.
Hallo Leute,
ich hoffe ihr könnt mir auch diesmal weiterhelfen mit einem Skript.
Folgende Situation. Größeres Netzwerk (>1000User), auf den Clients liegen noch PST Dateien rum. Diese sollen von den Clients weg in den Exchange verschoben werden.
Im Netz habe ich ein vb Skript gefunden, welches die aktuell eingebundenen PST Dateien ausliest. Das skript gibt pfad, größe etc aus. Die Ausgabe filtere ich mit findstr.
Das Ergebnis (1-x Zeilen Text, je nachdem wieviele Dateien eingebunden sind) schreibe ich mir in eine Textdatei.
In dieser Textdatei kürze ich die ersten X Stellen , da nicht benötigt. ( Path: wird weggeschnitten).
Dann suche ich ob der Zeilenanfang C:\ oder W: oder ... enthält. C:\ wird dann entsprechend ersetzt durch \\%COMPUTERNAME%\C$\ .....andere werte eben durch was anderes..sodass man daraus einen copy job bauen kann.
das schreibe ich dan wieder in eine Datei. Habe fertig.
Unter windows 7 mit cscript version 5.8 hat das bisher tadellos funktioniert und ich war stolz wie oskar, weil ich mir das alles eher zusammengebastelt habe - bin nicht so der Programmierer.
Nun habe ich das heute an den Zielsystemen mit XP getestet, es geht nicht.
er steigt bereits beim ersten cscript mit der Meldung
pstlocate.vbs(42, 5) Laufzeitfehler in Microsoft VBScipt: Typen unverträglich: 'UBound'
aus
Kann mir da jemand weiterhelfen was die Ursache ist und das Skript ans laufen bringen.
Wie gesagt unter Win7 mit cscript 5.8 klappt es 1a
Hier ist das Skript zu finden: http://gallery.technet.microsoft.com/ScriptCenter/313eaffd-a3a7-439a-aa ...
und hier der Code den ich mir zusammengebaut habe:
Gruß und Dank im Vorraus
KangarooJack
Hallo Leute,
ich hoffe ihr könnt mir auch diesmal weiterhelfen mit einem Skript.
Folgende Situation. Größeres Netzwerk (>1000User), auf den Clients liegen noch PST Dateien rum. Diese sollen von den Clients weg in den Exchange verschoben werden.
Im Netz habe ich ein vb Skript gefunden, welches die aktuell eingebundenen PST Dateien ausliest. Das skript gibt pfad, größe etc aus. Die Ausgabe filtere ich mit findstr.
Das Ergebnis (1-x Zeilen Text, je nachdem wieviele Dateien eingebunden sind) schreibe ich mir in eine Textdatei.
In dieser Textdatei kürze ich die ersten X Stellen , da nicht benötigt. ( Path: wird weggeschnitten).
Dann suche ich ob der Zeilenanfang C:\ oder W: oder ... enthält. C:\ wird dann entsprechend ersetzt durch \\%COMPUTERNAME%\C$\ .....andere werte eben durch was anderes..sodass man daraus einen copy job bauen kann.
das schreibe ich dan wieder in eine Datei. Habe fertig.
Unter windows 7 mit cscript version 5.8 hat das bisher tadellos funktioniert und ich war stolz wie oskar, weil ich mir das alles eher zusammengebastelt habe - bin nicht so der Programmierer.
Nun habe ich das heute an den Zielsystemen mit XP getestet, es geht nicht.
er steigt bereits beim ersten cscript mit der Meldung
pstlocate.vbs(42, 5) Laufzeitfehler in Microsoft VBScipt: Typen unverträglich: 'UBound'
aus
Kann mir da jemand weiterhelfen was die Ursache ist und das Skript ans laufen bringen.
Wie gesagt unter Win7 mit cscript 5.8 klappt es 1a
Hier ist das Skript zu finden: http://gallery.technet.microsoft.com/ScriptCenter/313eaffd-a3a7-439a-aa ...
und hier der Code den ich mir zusammengebaut habe:
@echo off & setlocal enabledelayedexpansion
if exist %temp%\Output1.txt del %temp%\Output1.txt
if exist %temp%\Output2.txt del %temp%\Output2.txt
xcopy D:\Test\pstlocate.vbs %temp% /Y
cscript %temp%\pstlocate.vbs | findstr /C:".pst">>%temp%\Output1.txt
set "filename=%temp%\Output1.txt"
set "tempfile=%temp%\tmptxt.txt"
for /F "delims=" %%a in (%filename%) do (
set text=%%a
set text=!text:^&=und!>>%tempfile%
)
set xy=7
set "Alt=%filename%"
set "Neu=%temp%\Output2.txt"
set "Cut=%temp%\Cut.vbs"
echo Set fso=CreateObject("Scripting.FileSystemObject"):aL=Split(fso.OpenTextFile(WScript.Arguments(0),1).ReadAll,vbCrLF)>"%Cut%"
echo Set N=fso.OpenTextFile(WScript.Arguments(1),2,-1):P=WScript.Arguments(2)+1:For Each sL In aL: N.WriteLine Mid(sL,P):Next:N.Close>>"%Cut%"
cscript //nologo "%Cut%" "%Alt%" "%Neu%" %xy%
del "%Cut%"
del %tempfile%
del %temp%\Output1.txt
set "Datei=%temp%\Output2.txt"
set "VonC=C:\"
set "NachC$=\\%COMPUTERNAME%\C$\"
set "VonD=D:\"
set "NachD$=\\%COMPUTERNAME%\D$\"
set "VonW=W:\"
set "NachdomW=\\domaenel\K010\Benutzer\%USERNAME%\"
set "VonX=X:\"
set "NachdomX=ERROR "
set "t=%temp%\text.tmp"
if exist "%t%" del "%t%"
for /f "usebackq delims=" %%i in ("%Datei%") do set "Line=%%i" & set Line=!Line:%VonC%=%NachC$%! & echo !Line!>>"%t%"
move /y "%t%" "%Datei%"
for /f "usebackq delims=" %%i in ("%Datei%") do set "Line=%%i" & set Line=!Line:%VonD%=%NachD$%! & echo !Line!>>"%t%"
move /y "%t%" "%Datei%"
for /f "usebackq delims=" %%i in ("%Datei%") do set "Line=%%i" & set Line=!Line:%VonW%=%NachdomW%! & echo !Line!>>"%t%"
move /y "%t%" "%Datei%"
for /f "usebackq delims=" %%i in ("%Datei%") do set "Line=%%i" & set Line=!Line:%VonX%=%NachdomX%! & echo !Line!>>"%t%"
move /y "%t%" "%Datei%"
%temp%\Output2.txt
Gruß und Dank im Vorraus
KangarooJack
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Kommentar vom Moderator Dani am 14.12.2011 um 20:35:23 Uhr
Du weißt, dass es Formatierungshilfen hier gibt?!
Content-ID: 177709
Url: https://administrator.de/contentid/177709
Ausgedruckt am: 21.11.2024 um 21:11 Uhr
5 Kommentare
Neuester Kommentar
Hallo,
was das ändern des Skripts angeht, schau dir mal die letzten 7 Zeilen an. Hier wird die Ausgabe aus Tabs, Strings und den Werten zusammengesetzt. Wenn du hier jetzt alles rauslöschst, was du nicht brauchst ("Path:","vbTab",...) und nur die Zeile drin lässt, die du brauchst.
Falls du Probleme hast, frag einfach
MfG,
Mathe172
was das ändern des Skripts angeht, schau dir mal die letzten 7 Zeilen an. Hier wird die Ausgabe aus Tabs, Strings und den Werten zusammengesetzt. Wenn du hier jetzt alles rauslöschst, was du nicht brauchst ("Path:","vbTab",...) und nur die Zeile drin lässt, die du brauchst.
Falls du Probleme hast, frag einfach
MfG,
Mathe172
Hallo Kangaroojack!
Klingt irgendwie nach einem Beitrag in der Nachbarschaft (dort hatte ich ganz unten noch einen Vorschlag drangehängt) ...
Grüße
bastla
Klingt irgendwie nach einem Beitrag in der Nachbarschaft (dort hatte ich ganz unten noch einen Vorschlag drangehängt) ...
Grüße
bastla