Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

WSH Script - Zeitstempel einer Datei manipulieren

Frage Microsoft Windows Server

Mitglied: MajorTom

MajorTom (Level 1) - Jetzt verbinden

30.06.2006, aktualisiert 21:14 Uhr, 6193 Aufrufe, 1 Kommentar

Hi zusammen,

wir haben einen temporären Ordner, der normalerweise alle 5 Tage gelöscht werden sollte.
Um das nicht händisch zu machen, soll ein WSH-Script überprüfen, welche Dateien älter als 5 Tage sind und den aktuellen Zeitstempel verpassen, damit diese Dateien 5 Tage dort verweilen können. Also am besten das create-Datum verwenden.
Zusätzlich (Nachdem der erste Teil des Scripts durchgelaufen ist) soll in diesem Script eine Abfrage stattfinden, die schaut, welche Dateien älter als 5 tage sind und diese dann löschen.

Den zweiten Teil habe ich bereits geschrieben nur tue ich mich mit dem ersten recht schwer.

Kann mir jemand helfen?
Mitglied: Biber
30.06.2006 um 21:14 Uhr
Moin MajorTom,

ist keine so unlösbare Aufgabe...

Eines der nicht so aufgeblähten Beispiele für eine Lösung ist hier:
http://www.codecomments.com/archive299-2005-4-434167.html

Weil es relativ kurz und knackig ist, poste es mal (denn von Kosmetischen Änderungen abgesehen würde ich es von der Strategie genau so machen):
You can modify a file's DateModified-Property using ShellAutomation.
ShellFileItem's ModifyDate-property is read-write.
In contrast to the FSO-solution, you don't have to copy, move or create
the file don't have to install 3rd party tools, e.g
touch from Borland/cygwin.

01.
Dim newDate, file 
02.
file = "C:\someexistingfile.dat" 
03.
newDate = DateSerial(2099,1,1) + TimeSerial(0,0,0) 
04.
 
05.
Call modifyDateMod file, newDate 
06.
 
07.
Sub modifyDateMod(strFilePath, newDate) 
08.
'# works at least on xp, independently from FS (NTFS or FAT) 
09.
Dim sh, sf, fi 
10.
Dim Dir, File, pos 
11.
 
12.
pos = InstrRev (strFilePath, "\") 
13.
Dir = Left(strFilePath, pos) 
14.
File = Mid (strFilePath, pos+1) 
15.
 
16.
'Get FolderItem 
17.
Set sh = CreateObject ("Shell.Application") 
18.
Set sf = sh.NameSpace (Dir) 
19.
Set fi = sf.ParseName (File) 
20.
 
21.
'manipulates the FolderItem's Last-Modificaton-Date 
22.
fi.ModifyDate = newDate 
23.
 
24.
End Sub
Okay - statt "newDate = DateSerial(2099,1,1) + TimeSerial(0,0,0)" solltest du "date", also dasheutige Datum nehmen..
Der Rest sollte passen.

Oder Du gehst über das FileSystemObject (Set oFSO=CreateObject("Scripting.FileSystemObject"). Siehe Forumssuche.

Gruß
Biber
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
PowerShell-Script zum Prüfen ob Datei(en) existieren (2)

Frage von Bonsai0815 zum Thema Batch & Shell ...

Windows Userverwaltung
gelöst Logon Script mit einer .reg Datei (7)

Frage von Kathaki zum Thema Windows Userverwaltung ...

Neue Wissensbeiträge
Windows 10

Windows 8.x oder 10 Lizenz-Key aus dem ROM auslesen mit Linux

(6)

Tipp von Lochkartenstanzer zum Thema Windows 10 ...

Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(38)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Heiß diskutierte Inhalte
Windows 10
gelöst Windows 10 Home "Netzlaufwerk nicht bereit" (19)

Frage von Oggy01 zum Thema Windows 10 ...

Viren und Trojaner
Verschlüsselungstrojaner simulieren (18)

Frage von AlbertMinrich zum Thema Viren und Trojaner ...

LAN, WAN, Wireless
Cisco W-Lan Controller als Applicance oder Software (11)

Frage von Herbrich19 zum Thema LAN, WAN, Wireless ...

Exchange Server
Exchange Postfach leeren - nicht löschen (11)

Frage von AndreasOC zum Thema Exchange Server ...