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
GELÖST

Verzeichnisse mit neuen Datum ändern bzw. anpassen

Frage Entwicklung Batch & Shell

Mitglied: 115241

115241 (Level 1)

30.06.2014, aktualisiert 01.07.2014, 1039 Aufrufe, 2 Kommentare

Hallo, hier kurz und knapp mein Problem.

Ich habe mit Hilfe von FileTouch.exe ein Batch Script geschrieben welches Folgendes macht (funktioniert tadellos).
Es liest das Datum in ausgewählten Verzeichnissen, aus einer Datei die sich dort drin befindet und verseht andere Dateien die sich auch in dem Verzeichnis befinden mit dem neuen Datum aus.
Sprich, ich "normalisiere" ausgewählte Dateiendtyp mit dem "definiertem" Datum so, dass alle Dateien das gleiche Datum zum Schluss haben.

Mein Problem ist jetzt, dass ich auch die "Verzeichnisse" mit dem zugehörigen Datum verändern möchte, das gelingt mir leider nicht.

Hier ist mein Script:
01.
@echo off & setlocal & title %~n0 
02.
cls 
03.
 
04.
:: Verändert das Datum und die Uhrzeit mittels FileTouch.exe 
05.
:: Informationen werden aus der Attribute eines zuvor deklarierten 
06.
:: Dateityps gelesen und fuer das neue Dateityp verwendet 
07.
:: Downlouad unter http://www.softtreetech.com/24x7/archive/47.htm 
08.
 
09.
:: Pfad von FileTouch.exe 
10.
set Touch="c:\tools\FileTouch.exe" 
11.
:: Arbeitsverzeichnis  
12.
set "Verzeichnis=G:\Test" 
13.
:: Dateityp der verarbeitet wird 
14.
set "Typ=jpg" 
15.
:: Datum/Zeit wird aus dem Dateityp ausgelesen 
16.
set "orgTyp=txt" 
17.
 
18.
:: -=- Sofern Liste.txt nicht verwendet wird,  
19.
:: -=- muss von hier alles Komentiert sein 
20.
 
21.
:: Aktuelles Verzeichnis, wo diese .bat und Liste.txt liegen 
22.
set "Pfad=%~dp0" 
23.
:: Liste mit Verzeichnissen, die verarbeitet werden 
24.
set "List=Liste.txt" 
25.
 
26.
:: Wechselt ins aktuelles Verzeichnis, sonst Ende 
27.
pushd %Pfad% || goto :eof 
28.
:: Verarbeitet Liste und springt zu ProcessFile 
29.
for /f "usebackq delims=" %%i in ("%List%") do set "Verzeichnis=%%i" & call :Process1 "%%i" 
30.
popd 
31.
goto :eof 
32.
 
33.
:Process1 
34.
echo Verzeichnis aus %List%: %Verzeichnis% 
35.
 
36.
:: -=- Bis hier sofern Liste.txt verwendet wird 
37.
 
38.
:: Wechselt ins Arbeitverzeichnis, sonst Ende 
39.
pushd "%Verzeichnis%" || goto :eof 
40.
 
41.
:: Liest das Datum und die Uhrzeit und fügt der Zeit zusätzliche (:00) bei,  
42.
:: die notwendig sind für das umschreiben von FileTouch 
43.
for %%i in ("%Verzeichnis%\*.%orgTyp%") do ( 
44.
    for /f "tokens=1-2 delims= " %%j in ("%%~ti") do (set "Datum=%%j" & set "Zeit=%%k:00") 
45.
46.
:: Datumsformat aus Punkten (.) wird Bindestrich (-) notwendig für FileTouch 
47.
for /f "delims=. tokens=1-3" %%a in ("%Datum%") do (set "Dat=%%b-%%a-%%c") 
48.
 
49.
:: Verarbeitet Dateien die verändert werden sollen 
50.
for /f "delims=" %%i in ('dir /b /a-d /t:c "*.%Typ%"') do @( set "Datei=%%i" & call :Process2 "%%i") 
51.
popd 
52.
goto :eof 
53.
 
54.
:Process2 
55.
echo. 
56.
echo Dateiname: %Datei% Datum: %Dat% Zeit: %Zeit% 
57.
echo ---------- 
58.
:: FileTouch mit Parametern wird aufgerufen 
59.
echo %Touch% /W /A /C /D %Dat% /T %Zeit% "%Verzeichnis%" 
60.
echo -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Die Liste sieht so aus:
01.
C:\Test\Verzeichnis_1 
02.
C:\Test\Verzeichnis_2 
03.
C:\Test\Verzeichnis_3
Batch und Liste.txt befinden sich in C:\Test

Wie kann ich jetzt nur die Verzeichnisse mit dem "ausgelesenen" Datum anpassen??
Danke für die Hilfe

ps: Handarbeit fällt aus, da es sich um mehrere Hundert Verzeichnisse handelt.
Mitglied: Gersen
LÖSUNG 30.06.2014, aktualisiert um 20:57 Uhr
Hallo,

mal DirTouch angeschaut? - Ungetestet.

Gruß,
Gersen
Bitte warten ..
Mitglied: 115241
30.06.2014 um 20:56 Uhr
Hi,
Zitat von Gersen:
Hallo,
mal DirTouch angeschaut? - Ungetestet.
Gruß,
Gersen
Danke für den Tipp, funktioniert, muss nur noch eine Batch dafür zusammen zimmern
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Powershell Monthcalendar Datum Format ändern (4)

Frage von xpxy15 zum Thema Batch & Shell ...

Microsoft Office
Automatischer Datenimport aus csv Datei in Access DB - Wo zu ändern? (2)

Frage von Mejestic12 zum Thema Microsoft Office ...

VB for Applications
Vba Outlook Betreff Datum - Absender - Empfänger (7)

Frage von Romy0907 zum Thema VB for Applications ...

Microsoft Office
gelöst Excel 2013: Nur einem bestimmten Personenkreis erlauben, Daten zu ändern (3)

Frage von newbie58 zum Thema Microsoft Office ...

Neue Wissensbeiträge
Rechtliche Fragen

Heiseshow, live ab 12 Uhr: Steht die Vorratsdatenspeicherung vor dem Aus?

Tipp von sabines zum Thema Rechtliche Fragen ...

Outlook & Mail

Outlook Probleme nach Juni Updates - KB3203467 ist Schuld

(1)

Information von Deepsys zum Thema Outlook & Mail ...

Microsoft Office

Windows 7, Office 2016 RTM und Updates ohne WSUS

Tipp von chgorges zum Thema Microsoft Office ...

E-Mail

Thunderbird 52 hat Druckprobleme

(3)

Tipp von magicteddy zum Thema E-Mail ...

Heiß diskutierte Inhalte
Server-Hardware
Einem Stromausfall entgegen wirken (22)

Frage von OIOOIOOIOIIOOOIIOIIOIOOO zum Thema Server-Hardware ...

Humor (lol)
Aktuell keine IT Probleme (20)

Frage von lordofremixes zum Thema Humor (lol) ...

Festplatten, SSD, Raid
PC stellt nach dem Bios ab (20)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...