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 Dateien umbenennen abhängig vom Erstellungsdatum

Mitglied: andi0972

andi0972 (Level 1) - Jetzt verbinden

25.09.2007, aktualisiert 27.09.2007, 4641 Aufrufe, 5 Kommentare

Hallo zusammen,

ich habe folgendes Problem, ich möchte gerne Dateien z.B. Uebergabe_02_00007985_20070925100505.000 in z.B. Uebergabe_02_00007985_20070925100505.002 umbenennen.
Diese werden von einem anderen Prozess ertstellt und es kann sei dass diese noch im Zugriff sind wenn der Batch läuft den ich momentan laufen habe.
Deswegen dürfen nur Dateien umbenannt werden die älter als 5 Minuten sind.
Der Dateiname baut sich immer uebergabe_02_fortlaufendeNummer_JahrMonatTagUhrzeit.000 auf.
Es soll auch nur die Dateiendung in 002 umbenannt werden, dies ist dann für die weitere Verarbeitung.
Der Dateiname selbst soll gleich bleiben.

Kann hier jemand weiterhelfen?


Vielen Dank
Mitglied: bastla
25.09.2007 um 17:52 Uhr
Hallo Andi0972 und willkommen im Forum!

Du könntest es mit der folgenden Batch/VBScript-Kombination versuchen:
01.
@echo off & setlocal 
02.
set /a MindestAlter=5 
03.
set "D=D:\Daten\*.000" 
04.
set "New=*.002" 
05.
 
06.
set "AM=%temp%\AgeInMinutes.vbs" 
07.
echo A=DateDiff("n", CreateObject("Scripting.FileSystemObject").GetFile(WScript.Arguments(0)).DateLastModified, Now):If A^>100000 Then WScript.Echo 100000 Else WScript.Echo A>"%AM%" 
08.
 
09.
for %%i in ("%D%") do for /f %%a in ('cscript //nologo "%AM%" "%%i"') do set /a Alter=%%a & call :ProcessFile "%%i" 
10.
del "%AM%" 
11.
goto :eof 
12.
 
13.
:ProcessFile 
14.
if %Alter% leq %MindestAlter% goto :eof 
15.
ren %1 "%New%"
Da die Altersberechnung (zumindest unter Berücksichtigung eines Tages-/Monats-/Jahreswechsels) in Batch etwas aufwändig ist, erledigt der VBS-Teil die Ermittlung des Alters in Minuten, wobei eine (willkürliche) Begrenzung dafür sorgt, dass das Maximalalter mit 100000 Minuten angegeben wird.

Die angegebenen Quelldateien ("D:\Daten\*.000") werden einzeln untersucht und, falls deren Alter über dem Mindestalter (angegeben in Minuten) liegt, entsprechend der Vorgabe umbenannt.

Grüße
bastla
Bitte warten ..
Mitglied: andi0972
26.09.2007 um 13:24 Uhr
Vielen Dank für Deine Hilfe.
Mein Kollege und ich haben es mit einem selbst erstelltem Tool hin bekommen.

Aber trotzdem vielen Dank für Deine Hilfe.
Bitte warten ..
Mitglied: Biber
26.09.2007 um 18:41 Uhr
Ja, wie, andi0972,
Mein Kollege und ich haben es mit einem selbst erstelltem Tool hin bekommen.
... und weiter?

Da gratuliere ich doch erstmal. Aber dann möchte ich schon fragen:
Wollt ihr es zuerst dem Nobelpreiskommittee in Stockholm vorlegen oder dürfen wir als fachkundige Forums-MitleserInnen auch mal einen Blick drauf werfen?

Vielleicht ist ja die Lösung auch hilfreich für andere....
Das Problem "Dateien umbenennen abhängig vom Erstellungsdatum" jedenfalls tritt in diesem Forum schon hin und wieder mal auf.

Meine Bitte:
Auch wenn ihr selbst eine Lösung gefunden hat, lasst den Rest des Forums doch bitte daran teilhaben.
Falls ich mal eine Idee oder einen Lösungsansatz haben sollte, werde ich mich im Gegenzug dann auch damit einbringen.

Danke
Biber
Bitte warten ..
Mitglied: andi0972
27.09.2007 um 12:04 Uhr
Hallo,

sorry hatte vergessen zu erwähnen dass wir es nicht mit einem Batch sondern mit VFP gelöst haben. Hier dazu der Code:
01.
C_FILE_EXT_OLD = 000 
02.
 
03.
C_FILE_EXT_NEW = UPL 
04.
 
05.
C_TIME_DIF_SEC = 300 
06.
 
07.
  
08.
 
09.
gnDbcnumber = ADIR(gaDatabase, ('*.' + C_FILE_EXT_OLD) )  
10.
 
11.
IF gnDbcnumber > 0 
12.
 
13.
      FOR nCount = 1 TO gnDbcnumber   
14.
 
15.
         C_FILE_NAME_OLD = ALLTRIM(gaDatabase(nCount,1)) 
16.
 
17.
         C_FILE_DATE_OLD = DTOC(gaDatabase(nCount,3)) 
18.
 
19.
         C_FILE_TIME_OLD = gaDatabase(nCount,4) 
20.
 
21.
         C_FILE_DATI_OLD = C_FILE_DATE_OLD + ' ' + C_FILE_TIME_OLD 
22.
 
23.
         N_ZEIT_DIF = DATETIME() - CTOT(C_FILE_DATI_OLD) 
24.
 
25.
         IF N_ZEIT_DIF > VAL(C_TIME_DIF_SEC) 
26.
 
27.
               C_FILE_NAME_ALT_OHNE_EXT = SUBSTR(C_FILE_NAME_OLD,1,LEN(C_FILE_NAME_OLD)-3) 
28.
 
29.
               C_FILE_NAME_NEU = C_FILE_NAME_ALT_OHNE_EXT + C_FILE_EXT_NEW 
30.
 
31.
               RENAME (C_FILE_NAME_OLD) TO (C_FILE_NAME_NEU) 
32.
 
33.
         ENDIF           
34.
 
35.
      ENDFOR 
36.
 
37.
ENDIF 
Viele Grüße
Bitte warten ..
Mitglied: Biber
27.09.2007 um 13:30 Uhr
Moin andi0972,

Danke Dir fürs Posten.
Habe Deinen Code als <code> formatiert.

Jetzt schließe ich den Beitrag auch.

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Datei nach Erstellungsdatum verschieben
Frage von Kugelschreiber1Batch & Shell2 Kommentare

Hallo, ich möchte über eine Batch-Datei Dateien, die älter als 20 Tage sind, in einen anderen Ordner verschieben. Dabei ...

Batch & Shell
Dateien Umbenennen
gelöst Frage von PLBot85Batch & Shell6 Kommentare

Hi, ich habe einen Ordner wo mehrer Dateien drin liegen. 20150316_121757_92636382965528_WMA1847GK62_TDOBB112.ddd 20150314_085730_73826383950256_WMA18263926_TDOBB236.ddd etc Die sollen jetzt mittels einer Batchdatei ...

Batch & Shell
Dateien verschieben und umbenennen
gelöst Frage von eazy-isiBatch & Shell12 Kommentare

Hallo zusammen, ich stehe vor folgender Herausforderung. Ich muss aus einem Verzeichnis Dateien in ein anderes Verzeichnis verschieben und ...

Viren und Trojaner

WannaCry - wiederhergestellte Dateien umbenennen

Frage von MasterPhilViren und Trojaner7 Kommentare

Hallo Zusammen, ich habe hier einen mit WannaCry verschlüsselten PC - die Dateien sind soweit wieder da und auch ...

Neue Wissensbeiträge
Multimedia & Zubehör
AVM Fritz USB WLAN Sticks schneller einschalten
Tipp von NetzwerkDude vor 18 StundenMultimedia & Zubehör

Die AVM Fritz WLAN Sticks haben in der Firmware 2 Modis: Einmal als Massenspeicher und einmal als WLAN Netzwerkkarte ...

Windows Server

Windows Server Backup schlögt Fehl -Lösung 2008-2016

Tipp von BiGnoob vor 20 StundenWindows Server

Hi zusammen , ich möchte gerne einen Lösungstipp abgeben für folgenden fehler: lösung ist folgende:

Humor (lol)
Telekom vs. O2 - 3:2
Erfahrungsbericht von the-buccaneer vor 1 TagHumor (lol)3 Kommentare

Unglaublich aber wahr: Nachdem mein privater Anschluss am 19.04.18 auf VOIP und VDSL umgestellt wurde, hatte ich seitdem 1,5 ...

Batch & Shell

Windows 10 Heimnetzgruppe abgeschaft. Ein Script für einfache Netzwerk - Freigabe im Heimnetzwerk

Anleitung von treehe vor 1 TagBatch & Shell3 Kommentare

Anleitung für eine einfache Netzwerkfreigabe unter Windows 10 Wie weiter hab mal ein kleines CMD - Script gebastelt. Womit ...

Heiß diskutierte Inhalte
Netzwerke
IP-Adresse am zweiten Domänencontroller fest vergeben - Server verschwunden
gelöst Frage von DanielG1974Netzwerke27 Kommentare

Ich hab ein Problem, was ich bisher noch nicht erlebt habe Ich habe erfolgreich einen zweiten Server mit ActiveDirectory ...

Windows Tools
Virtueller Drucker gesucht (Schnittstelle: USB oder Seriell)
Frage von chrisButterflyWindows Tools19 Kommentare

Hi, ich suche einen virtuellen Drucker, den ich über eine USB oder serieller Schnittstelle ansprechen kann. Dieser Drucker soll ...

Firewall
Sophos SG 125 nicht mehr erreichbar
Frage von GwaihirFirewall15 Kommentare

Hallo zusammen, ausgerechnet über die Feiertage stimmt etwas mit meiner Firmen-Firewall nicht. Es ist eine Sophos SG 125 und ...

Windows Server
Windows Server 2012 - Update - Beim Booten bleibt der Server beim Windows Zeichen stehen
Frage von KeilbachWindows Server15 Kommentare

Hallo Zusammen, ich grüße euch, mein Name ist Michele. Ich bin hier ganz Neu - da ich einfach nicht ...