Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Probleme mit Log-Datei und Frage zum Überschreiben von Dateien

Mitglied: Imrazor

Imrazor (Level 1) - Jetzt verbinden

15.02.2010 um 13:28 Uhr, 5110 Aufrufe, 6 Kommentare

1.) Log-Einträge werden nicht immer geschrieben
2.) Wie kann man vorhandene Dateien überschreiben?

Hallo Leute!

Ich muss euch wieder mal bemühen. Dieses mal habe ich zwei Fragen:

1) Ich schreibe in eine Log-Datei, bevor mein Skript eine Datei kopiert/verschiebt und wenn nochmal nach dem Vorgang:

01.
Function Copy(Quellpfad, Zielpfad) 
02.
 
03.
Set FSO = CreateObject("Scripting.FileSystemObject") 
04.
Set Quelle = FSO.GetFolder(Quellpfad) 
05.
Set Ziel = FSO.GetFolder(Zielpfad) 
06.
 
07.
For Each File in Quelle.Files 
08.
 
09.
	'Log-Eintrag schreiben: 
10.
	Bericht = "Protokoll " & File.Name & " wird von " & Quellpfad & " nach " & Zielpfad & " kopiert!" 
11.
	Call Log(Logdatei, Bericht) 
12.
 
13.
	FSO.CopyFile Quellpfad & "\*.*", Zielpfad & "\" 
14.
 
15.
	'Log-Eintrag schreiben: 
16.
	Bericht = "Protokoll wurde von " & Quellpfad & " nach " & Zielpfad & " kopiert!" 
17.
	Call Log(Logdatei, Bericht) 
18.
Next 
19.
	 
20.
End Function
01.
Function Move(Quellpfad, Zielpfad) 
02.
 
03.
Set FSO = CreateObject("Scripting.FileSystemObject") 
04.
Set Quelle = FSO.GetFolder(Quellpfad) 
05.
Set Ziel = FSO.GetFolder(Zielpfad) 
06.
 
07.
For Each File in Quelle.Files 
08.
 
09.
	'Log-Eintrag schreiben: 
10.
	Bericht = "Protokoll " & File.Name & " wird von " & Quellpfad & " nach " & Zielpfad & " verschoben!" 
11.
	Call Log(Logdatei, Bericht) 
12.
 
13.
	FSO.MoveFile Quellpfad & "\*.*", Zielpfad & "\" 
14.
 
15.
	'Log-Eintrag schreiben: 
16.
	Bericht = "Protokoll wurde von " & Quellpfad & " nach " & Zielpfad & " verschoben!" 
17.
	Call Log(Logdatei, Bericht) 
18.
Next 
19.
 
20.
End Function
Und hier die Funktion zum Schreiben des Logs:

01.
Function Log(Datei, LogTxt) 
02.
 
03.
If LogAktiv=1 Then 
04.
	Set FSO = CreateObject("Scripting.FileSystemObject") 
05.
	Set FileOut = FSO.OpenTextFile(Datei,8,True) 
06.
 
07.
	FileOut.WriteLine (now()) 
08.
	FileOut.WriteLine (LogTxt) 
09.
	FileOut.writeLine ("   ") 
10.
	FileOut.Close 
11.
 
12.
	Set FileOut = Nothing 
13.
End If 
14.
 
15.
End Function 
Am Anfag meines eigentlichen Codes definiere ich den Pfad zur Logdatei und ob gelogged werden soll. Das funktioniert auch einwandfrei.

Mein Problem: Ich teste mit zwei Dateien, die kopiert/verschoben werden. Beim Kopieren werden die Log-Einträge für beide Dateien gesetzt, beim Verschieben nur für eine Datei. Woran kann dies liegen??

Hier mal ein Beispiel für nen Logeintrag:
01.
15.02.2010 13:19:14 
02.
Protokoll PDFCreatorDoku.pdf wird von D:\PRINTTEST\TEMP2 nach D:\PRINTTEST\TEMP verschoben! 
03.
    
04.
15.02.2010 13:19:17 
05.
Protokoll wurde von D:\PRINTTEST\TEMP2 nach D:\PRINTTEST\TEMP verschoben! 
06.
   
07.
15.02.2010 13:19:37 
08.
Protokoll PDFCreatorDoku.pdf wird von D:\PRINTTEST\TEMP nach D:\PRINTTEST\TEMP5\2010-02-15 kopiert! 
09.
    
10.
15.02.2010 13:19:40 
11.
Protokoll wurde von D:\PRINTTEST\TEMP nach D:\PRINTTEST\TEMP5\2010-02-15 kopiert! 
12.
    
13.
15.02.2010 13:19:40 
14.
Protokoll Signatur_mit_Adobe8.pdf wird von D:\PRINTTEST\TEMP nach D:\PRINTTEST\TEMP5\2010-02-15 kopiert! 
15.
    
16.
15.02.2010 13:19:43 
17.
Protokoll wurde von D:\PRINTTEST\TEMP nach D:\PRINTTEST\TEMP5\2010-02-15 kopiert! 
18.
    
19.
15.02.2010 13:19:43 
20.
Protokoll PDFCreatorDoku.pdf wird von D:\PRINTTEST\TEMP nach D:\PRINTTEST\TEMP4\2010-02-15 verschoben! 
21.
    
22.
15.02.2010 13:19:46 
23.
Protokoll wurde von D:\PRINTTEST\TEMP nach D:\PRINTTEST\TEMP4\2010-02-15 verschoben!

2.) Meine zweite Frage:

Wie kann ich eine bereits vorhandene (gleiche) Datei beim Kopieren/Verschieben überschreiben?

Ich dachte, dies ginge mit dem Parameter TRUE, bekommen dann aber einen Fehler.

01.
FSO.MoveFile Quellpfad & "\*.*", Zielpfad & "\", TRUE
Mitglied: Biber
15.02.2010 um 13:53 Uhr
Moin IM Razor,

zu a) Für deine Log-Zeile ermittelst du den "richtigen" Text zwar dateiweise.
Die .MoveFile-Methode allerdings lässt du ja mit Wildcards (FSO.MoveFile Quellpfad & "\*.*", Zielpfad & "\" ) loslaufen.
D.h. it works as designed... - kein ungebührliches Verhalten des Schnipsels festzustellen.

zu b) Warum sollte MoveFile jetzt am Wochenende einen undokumentierten Parameter "ÜberschreibFallsVorhanden" dazubekommen haben?
Nur weil Valentinstag war?
--> Also, Vorhandensein "alteDatei" (im Zielverzeichnis) selber prüfen; ggf. vorher löschen.

Grüße
Biber
Bitte warten ..
Mitglied: Imrazor
15.02.2010 um 14:06 Uhr
Hey Biber,

zu 1) dumme Frage: Und wieso funktioniert es dann bei der CopyFile-Methode??

Hier mache ich es ja genauso mit Wildcards:
01.
FSO.CopyFile Quellpfad & "\*.*", Zielpfad & "\" 
zu 2) hmm, dachte es gibt für MobeFile ebenfalls diesen Parameter geben, wie bei CopyFile. Anscheinend ist dem nicht so.
Bitte warten ..
Mitglied: bastla
15.02.2010 um 14:33 Uhr
Hallo lmrazor!
Und wieso funktioniert es dann bei der CopyFile-Methode??
Nach dem (ersten) Kopieren aller Dateien befinden sich wie viele Dateien im Quellpfad? Jedenfalls mehr als nach dem (ersten und einzigen) Verschieben aller Dateien ...

Anstelle von
FSO.MoveFile Quellpfad & "\*.*", Zielpfad & "\"
würde sich
File.Move Zielpfad & "\"
besser eignen (gilt analog auch für das Kopieren und die Methode "Copy") ...

Grüße
bastla
Bitte warten ..
Mitglied: Imrazor
15.02.2010 um 15:22 Uhr
Super, danke bastla!

Da stand ich wohl ein bißchen auf der Leitung

Naja, jetzt muss ich nur noch was zusammenbasteln für die Prüfung, ob die Dateien schon vorhanden sind...
Bitte warten ..
Mitglied: Imrazor
15.02.2010 um 16:14 Uhr
Für alle, die es interessiert, ich habe die Prüfung so gelöst:

01.
Function Move(Quellpfad, Zielpfad) 
02.
 
03.
Set FSO = CreateObject("Scripting.FileSystemObject") 
04.
Set Quelle = FSO.GetFolder(Quellpfad) 
05.
Set Ziel = FSO.GetFolder(Zielpfad) 
06.
 
07.
For Each File in Quelle.Files 
08.
 
09.
	If FSO.fileExists(Zielpfad & "\" & File.Name) then 
10.
	 
11.
	FSO.DeleteFile Zielpfad & "\" & File.Name 
12.
 
13.
	File.Move Zielpfad & "\" 
14.
 
15.
	Else 
16.
 
17.
	File.Move Zielpfad & "\" 
18.
 
19.
	End If 
20.
Next 
21.
End Function
Bitte warten ..
Mitglied: bastla
15.02.2010 um 17:31 Uhr
Hallo lmrazor!

Ließe sich noch etwas "eindampfen" :
01.
Function Move(Quellpfad, Zielpfad) 
02.
 
03.
Set FSO = CreateObject("Scripting.FileSystemObject") 
04.
Set Quelle = FSO.GetFolder(Quellpfad) 
05.
Set Ziel = FSO.GetFolder(Zielpfad) 
06.
 
07.
For Each File in Quelle.Files 
08.
 
09.
	If FSO.fileExists(Zielpfad & "\" & File.Name) Then FSO.DeleteFile Zielpfad & "\" & File.Name 
10.
 
11.
	File.Move Zielpfad & "\" 
12.
 
13.
Next 
14.
End Function
Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Backup

Nur korrupte Dateien aus dem Backup überschreiben

gelöst Frage von MichiD41Backup4 Kommentare

Hallo Zusammen, ich habe folgende Situation: Vor einigen Tagen viel uns auf , dass das Filesystem unseres Gruppenlaufwerkes (1,3 ...

Windows Tools

Robocopy . Datei im Zielverzeichnis nur überschreiben, wenn neuer

Frage von gnrmarcelWindows Tools7 Kommentare

Hallo, ich habe hier in der Firma, ältere USB Festplatten, wo das Gleiche (Ordner struktur inkl. Dateien) drauf ist ...

Batch & Shell

Batchdatei soll überprüfen, ob auf eine Log Datei

Frage von hoppalaBatch & Shell1 Kommentar

Hiho :) ! Ein Freund und ich haben eine Batchdatei erstellt, leider kommen wir bei einer Sache nicht weiter. ...

Mac OS X

Überschreiben von Dateien mit ADOBE und Server 2008

gelöst Frage von schritttmacherMac OS X5 Kommentare

Hallo zusammen, bei unserem Kunden, Mischbetrieb aus MAC und PC in Verbindung mit ADOBE Produkten, kommt es immer wieder ...

Neue Wissensbeiträge
Windows 10
Zero-Day-Lücke in Microsoft Edge
Information von kgborn vor 1 TagWindows 10

In Microsofts Edge-Browser klafft wohl eine nicht geschlossene (0-Day) Sicherheitslücke im Just In Time Compiler (JIT Compiler) für Javascript. ...

Sicherheit
Microsoft und Skype: Sicherheit
Information von kgborn vor 1 TagSicherheit

Die Tage gab es ja einige Berichte zur Sicherheit des Skype-Updaters. Der Updater von Skype läuft unter dem Konto ...

Datenschutz

Behörden ignorieren Sicherheitsbedenken gegenüber Windows 10

Information von Penny.Cilin vor 2 TagenDatenschutz8 Kommentare

Hallo, passend zum Thema Ablösung LIMUX in München ein interessanter Beitrag dazu: Behörden ignorieren Sicherheitsbedenken gegenüber Windows 10 Anscheinend ...

Sicherheit
Information Security Hub Munich airport
Information von brammer vor 2 TagenSicherheit

Hallo, Neues Center für Cyber Kriminalität am Münchener Flughafen brammer

Heiß diskutierte Inhalte
DSL, VDSL
Mindestgeschwindigkeiten DSL Telekom
Frage von justlukasDSL, VDSL14 Kommentare

Hallo zusammen, Seit diesem Jahr habe ich Verständnisprobleme mit dem Verhalten der Telekom. Wir haben seit einem Jahr VDSL ...

Switche und Hubs
LANCOM-Switch: Probleme (no link) mit SFP-Modulen?
Frage von THETOBSwitche und Hubs11 Kommentare

Hi zusammen, ich habe folgendes Problem: Und zwar habe ich an einem Standort drei Switche verbaut - LANCOM GS-2326P+, ...

Humor (lol)
Was könnte man mit einem Server machen? Idee gesucht
Frage von 2SeitenHumor (lol)11 Kommentare

Hey Zusammen Ich habe einen alten HP G2 Rackserver zu Hause rumliegen. 28GB Ram, 1xAMD Prozi mit etwa 2GHz. ...

Firewall
RB2011 Firewall Rule eine bestimmte Mac oder IP Adresse nicht zu blockieren
Frage von lightmanFirewall10 Kommentare

Hallo liebes Forum mit ihren Spezialisten. Ich habe meine Firewall so konfiguriert das kein Endgerät ohne meine Speziellen Erlaubnis ...