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

VBS Dateien kopieren, verschieben und löschen

Frage Entwicklung VB for Applications

Mitglied: staga75

staga75 (Level 1) - Jetzt verbinden

20.12.2011 um 10:06 Uhr, 8141 Aufrufe, 6 Kommentare

Hi Leute

ich habe hier ein Script welches ich mit Hilfe dieses Forums erstellt habe.

01.
Dim fso, files, file, datei, Suchstring, SL 
02.
Suchstring="103360" 
03.
datei=date-2 
04.
SL = Len(Suchstring) 
05.
Set fso = CreateObject ("scripting.FileSystemObject") 
06.
set files = fso.getFolder("C:\Temp\test1").files 
07.
For Each file In files 
08.
if file.datelastmodified < datei Then 
09.
If Left(file.Name, 6) = "103360" Then 
10.
fso.CopyFile file, "C:\Temp\test2\" 
11.
End If 
12.
End If 
13.
next 
14.
Dim fso, files, file, datei, Suchstring, SL 
15.
Suchstring="103360" 
16.
datei=date-2 
17.
SL = Len(Suchstring) 
18.
Set fso = CreateObject ("scripting.FileSystemObject") 
19.
set files = fso.getFolder("C:\Temp\test2").files 
20.
For Each file In files 
21.
if file.datelastmodified < datei Then 
22.
If Left(file.Name, 6) = "103360" And fso.GetExtensionName(file.name) = "XML" Then 
23.
fso.CopyFile file, "C:\Temp\test3\" 
24.
End If 
25.
End If 
26.
next
Ich möchte nun gerne folgende Funktionen einbauen:

1. Anstatt die XML zu kopieren möchte ich diese gerne VERSCHIEBEN.
- Habe also anstatt fso.CopyFilemit einfach fso.MoveFile "C:\Temp\test2\*.*", "C:\Temp\test3\" in der Zeile 23 eingesetzt
Leider verschiebt er alle Dateien. Jedoch sollte es nur Dateien welche xx älter, denn Namen 103360 und die Endung XML haben verschieben.

2. Danach möchte ich im Ordner C:\Temp\test3 alle Dateien löschen welche xx älter, den Namen 103360 und die Endung XML haben
- Hier habe ich keine Schimmer wie ich das anstellen soll. Habe nur geschafft den ganzen Inhalt zu löschen.

Ich währe sehr dankbar wenn mir jemand weiterhelfen kann da ich ein absoluter Anfänger bin was VBS und Programierung bzw. Scripting angeht.

Gruss Staga
Mitglied: 60730
20.12.2011 um 10:41 Uhr
Moin,

ich habe hier ein Script welches ich mit Hilfe dieses Forums erstellt habe.
ich währe sehr dankbar wenn mir jemand weiterhelfen kann da ich ein absoluter Anfänger bin was VBS und Programierung bzw. Scripting angeht.

Nun dann...

Was genau macht denn das Script?
Es sind übrigens zwei Sachen, die das Script macht.

Das ist ja relativ einfach und wenn du es schaffst uns die Befehlsfolgen zu erklären, kommst du bei der Gelegenheit von alleine drauf und das sollte das Ziel sein.
Sonst bist du bei der nächsten Änderung wieder der Ochs vorm Berg und genau das wollen wir hier keinem antun.

Gruß
Bitte warten ..
Mitglied: staga75
20.12.2011 um 10:50 Uhr
Hallo

Ja ich verstehe schon was du meinst. Ich habe es ja versucht (siehe Beitrag wo steht Zeile 23. Jedoch ist mir nicht klar wieso die vorhergehenden Argument Zeile 15 -22 beim verschieben oder löschen nicht berücksichtigt werden.

Gruss
Staga
Bitte warten ..
Mitglied: 60730
20.12.2011 um 10:53 Uhr
nein...

du hast zwei Schleifen innerhalb dieser wird etwas überprüft und Zeile 20 sagt dir doch.....

Und wenn du innerhalb dieser Abfrageschleife mit Platzhaltern werkelst - dann muß das in die Grütze hauen.
Bitte warten ..
Mitglied: 76109
20.12.2011 um 11:05 Uhr
Hallo staga75!

Bei der Gelegenheit könntest Du auch die Zeile 10 nochmal anschauen oder etwas vereinfachen mit
file.Move "C:\Temp\test3\"
beim verschieben und mit
file.Copy "C:\Temp\test3\"
beim kopieren

Und damit es auch mit der Dateierweiterung in Kleinbuchstaben funktioniert (*.xml und *.XML):
If Left(file.Name, 6) = "103360" And LCase(fso.GetExtensionName(file.Name)) = "xml" Then

Gruß Dieter
Bitte warten ..
Mitglied: staga75
20.12.2011 um 11:44 Uhr
Hallo zusammen

Danke für die Hinweise. Ich habe nun mein Script angepasst und bis auf das löschen funktioniert das ganze. Vielleicht habt Ihr nochmals einen Tipp für mich.
01.
Dim fso, files, file, datei, Suchstring, SL 
02.
Suchstring="103360" 
03.
datei=date-2 
04.
SL = Len(Suchstring) 
05.
Set fso = CreateObject ("scripting.FileSystemObject") 
06.
set files = fso.getFolder("C:\Temp\test").files 
07.
For Each file In files 
08.
if file.datelastmodified < datei Then 
09.
If Left(file.Name, 6) = "103360" Then 
10.
fso.CopyFile file, "C:\Temp\test1\" 
11.
End If 
12.
End If 
13.
next 
14.
Suchstring="103360" 
15.
datei=date-2 
16.
SL = Len(Suchstring) 
17.
Set fso = CreateObject ("scripting.FileSystemObject") 
18.
set files = fso.getFolder("C:\Temp\test1").files 
19.
For Each file In files 
20.
if file.datelastmodified < datei Then 
21.
If Left(file.Name, 6) = "103360" And fso.GetExtensionName(file.name) = "XML" Then 
22.
fso.MoveFile file, "C:\Temp\test2\" 
23.
End If 
24.
End If 
25.
next 
26.
Suchstring="103360" 
27.
datei=date-2 
28.
SL = Len(Suchstring) 
29.
Set fso = CreateObject ("scripting.FileSystemObject") 
30.
set files = fso.getFolder("C:\Temp\test").files 
31.
For Each file In files 
32.
if file.datelastmodified < datei Then 
33.
If Left(file.Name, 6) = "103360" And fso.GetExtensionName(file.name) = "XML" Then 
34.
fso.DeleteFile, file "C:\Temp\test\" 
35.
End If 
36.
End If 
37.
next
Bei der Ausführung kommt die eine Fehlermeldung Error Type Mismatch: 'DeleteFiles'
Bitte warten ..
Mitglied: staga75
20.12.2011 um 12:11 Uhr
Ok habe es selbst gefunden. Ich habe den Pfad in der Zeile 34 gelöscht.

Danke nochmals für eure Unterstützung.

gruss
Staga
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Dateien löschen und Verschieben
gelöst Frage von michi-ffmBatch & Shell10 Kommentare

Hallo Zusammen, ich bin dabei ein Skript zuschreiben, leider fehlen mir hierzu die erforderliche Kenntnisse. Ich habe folgenden Befehl: ...

VB for Applications
VBS oder Batch um eine Datei in Unterordner zu verschieben
Frage von MrRoyalVB for Applications1 Kommentar

Hallo zusammen, ich bin neu hier und kenne mich leider im Bereich VBS und Batch nicht so gut aus. ...

Batch & Shell
Batch Datei: PDF Dateien verschieben, umbenennen und löschen
gelöst Frage von F0rcehunterBatch & Shell4 Kommentare

Hallo zusammen, ich versuche mich gerade an einer Batch, die folgende Arbeitsschritte durchführen soll: In dem Ordner "C:\Produktdaten_zur_Uebernahme" befinden ...

VB for Applications
VBA - VBS : Umbennen und Verschieben von Dateien in Loop
gelöst Frage von E.WindVB for Applications4 Kommentare

Hallo zusammen, folgende Situation habe ich: Warenwirtschaftssystem erzeugt eine sog. Pollingdatei für DHL Easylog, bisher war es so, das ...

Neue Wissensbeiträge
Batch & Shell

Open Object Rexx: Eine mittlerweile fast vergessene Skriptsprache aus dem Mainframebereich

Information von Penny.Cilin vor 19 StundenBatch & Shell8 Kommentare

Ich kann mich noch sehr gut an diese Skriptsprache erinnern und nutze diese auch heute ab und an noch. ...

Humor (lol)

"gimme gimme gimme": Automatischer Test stolpert über Easter Egg im man-Tool

Information von Penny.Cilin vor 21 StundenHumor (lol)6 Kommentare

Interessant, was man so alles als Easter Egg implementiert. Ist schon wieder Ostern? "gimme gimme gimme": Automatischer Test stolpert ...

MikroTik RouterOS

Mikrotik - Lets Encrypt Zertifikate mit MetaROUTER Instanz auf dem Router erzeugen

Anleitung von colinardo vor 1 TagMikroTik RouterOS8 Kommentare

Einleitung Folgende Anleitung ist aus der Lage heraus entstanden das ein Kunde auf seinem Mikrotik sein Hotspot Captive Portal ...

Sicherheit

Sicherheitslücke in HP-Druckern - Firmware-Updates stehen bereit

Information von BassFishFox vor 1 TagSicherheit1 Kommentar

Ein weiterer Grund, dass Drucker keinerlei Verbindung nach "auswaerts" haben sollen. Unter Verwendung spezieller Malware können Angreifer aus der ...

Heiß diskutierte Inhalte
Windows Server
RDP macht Server schneller???
Frage von JaniDJWindows Server17 Kommentare

Hallo Community, wir betrieben seit geraumer Zeit diverse virtuelle Maschinen und Server mit Windows Server 2012. Leider haben wir ...

Windows 10
Bitlocker nach Verschlüsselung nicht mehr aufrufbar!
gelöst Frage von alexlazaWindows 1013 Kommentare

Hallo, ich besitze ein HP ZBook 17 G4 mit einem Windows 10 Pro Betriebssystem. Bei diesem Problem handelt sich, ...

Off Topic
Fachkräftemangel in Deutschland? - Talentschmiede schreibt alle 2 Tage die gleichen Stellen aus
Frage von Penny.CilinOff Topic12 Kommentare

Hallo, haben wir in Deutschland Fachkräftemangel? Die Talentschmiede schreibt gefühlt alle zwei Tage dieselben Stellen aus. Und das schon ...

Windows Server
Sichere Remote Desktop Verbindung wie?
gelöst Frage von nuss33Windows Server11 Kommentare

Hallo zusammen, eins vorweg: Ich besitze einen privaten Windows Server 2008 R2 zu Hause im Netzwerk er wird nicht ...