nostrades
Goto Top

Ordner in datumsformat anlegen

bevor ich alles händisch mache, möchte ich gerne a script haben, das wie folgt erledigen soll:

ich will alle ordner mit einem datum versehen. unter alle verstehe ich nämlich im zeitraum von jänner bis dezember...

also ordnername "2010_04_07", "2010_04_08", "2010_04_09" usw. usf.

wenn das locker möglich wäre, dann gäbe es 2 "top-steigerungen"

steigerung 1:
wenn das möglich wäre, dann wäre super, ordnern nur MO bis FR herzustellen? (wochentag = SA & SO ignorieren)

steigerung 2:
wären die feier- und festtage, die ich vorher in einer z.b. FEIERTAGE.TXT festgelegt habe, mit zu berücksichtigen? da sollen die ordner nicht erstellt werden.

Content-Key: 140076

Url: https://administrator.de/contentid/140076

Ausgedruckt am: 19.03.2024 um 10:03 Uhr

Mitglied: vatinel
vatinel 07.04.2010 um 17:08:52 Uhr
Goto Top
Auch ich würde gerne wissen, wie man das anhand einer batch erledigt.
Bis dato habe ich meine jährliche Liste immer umgeschrieben und einmal gestartet.

Irgendwann dann war ichs leid und hab dazu was gesucht - und gefunden:
http://www.jaderbass.de/index.php?site=folder

Deine Spezialitäten werden damit leider nicht abgedeckt.
Trotzdem, wie die batch dazu ausschauen könnte, interessiert mich sehr.

sollte ich völlig daneben liegen, dann schonmal pardon!
Mitglied: Biber
Biber 07.04.2010 um 17:27:01 Uhr
Goto Top
ist ja alles handwerklich kein Thema...

Aber grundsätzlich sollte es doch irgendeinen Sinn haben und nicht nur "möglich sein".

Meine selige Grosstante Frieda, die kochte früher immer auch "alles Mögliche".
Aber aus meiner Sicht muss dieser Brauch doch nicht immer von Generation zu Generation weitergegeben bzw. blind übernommen werden.

nostrades' Monolog "ich will alle ordner mit einem datum versehen. " verstehe ich überhaupt nicht.
Ich würde jeden mit der Pumpgun aus dem Zimmer prügeln, der so etwas an meinem Rechner machen wollte.

Aber du, @vatinel, scheinst ihn ja zu verstehen, wenn ich das hier lese
Bis dato habe ich meine jährliche Liste immer umgeschrieben und einmal gestartet.

Bitte erzählt doch mal - wozuTF braucht jemand unterhalb eines/jeden Ordners bis zu 365 Unterordner????
Wieso wird es dadurch übersichtlicher?

Absolut verständnislos
Biber
Mitglied: laster
laster 07.04.2010 um 17:34:24 Uhr
Goto Top
Hallo nostrades,

falls Du Ordner umbenennen oder erstellen willst mit dem aktuellen Datum, dann kann das mit Batch so gehen:
set HEUTE=%date:~-4%_%date:~-7,2%_%date:~-10,2%
md %HEUTE%
:: oder
ren c:\windows %HEUTE%

was immer Du machen willst - viel Erfolg face-smile

LS
Mitglied: bastla
bastla 08.04.2010 um 00:15:51 Uhr
Goto Top
Hallo nostrades und willkommen im Forum!

Abseits der Überlegungen zur Sinnhaftigkeit der ganzen Aktion sollte sich das (garniert mit etwas VBS) als Batch etwa so lösen lassen:
@echo off & setlocal
set "Basis=D:\Test"  
set "Jahr=2010"  
set "Feiertage=D:\Feiertage.txt"  

set M=%temp%\MakeDateFolders.vbs
> %M% echo Set fso=CreateObject("Scripting.FileSystemObject"):B=WScript.Arguments(0):J=WScript.Arguments(1):E=DateSerial(J,12,30):S=DateSerial(J,1,2):F="|"^&Replace(fso.OpenTextFile(WScript.Arguments(2)).ReadAll,vbCrLF,"|")^&"|"  
>>%M% echo For T=S To E:If Weekday(T,2)^<6 Then If InStr(F,"|"^&Day(T)^&"."^&Month(T)^&".|")=0 Then fso.CreateFolder(B^&"\"^&J^&"_"^&Right("0"^&Month(T),2)^&"_"^&Right("0"^&Day(T),2)):End If:End If:Next  

cscript //nologo %M% "%Basis%" %Jahr% "%Feiertage%"  
Aufbau der Feiertagsliste: In jeder Zeile ist ein Datum im Format "T.M." (also ohne Jahresangabe und ohne führende Nullen) anzugeben - Beispiel: 6.1.

Grüße
bastla
Mitglied: 89485
89485 08.04.2010 um 15:38:22 Uhr
Goto Top
Hi,

wie es natürlich geht wäre wie auch schon oben gesagt,...

mit %date:~0,2% für Tag; %date:~3,2% für Monat; und %date:~6% fürs Jahr

die Quelltext für TT.MM.JJJJ schaut dann so aus:

%date:~0,2%.%date:~3,2%.%date:~6%

Grüße
Batchliebhaber
Mitglied: Biber
Biber 08.04.2010 um 20:03:06 Uhr
Goto Top
Jetzt möchte ich bei dem Grusslosen doch auch mal anfragen, wie mit diesem Beitrag hier weiter verfahren werden soll.

@nostrades
Watt is`?

Moin, ihr andern Antwortenden,

@vatinel
Magst du meine Rückfrage, wie und ob denn "Tagesordner" sowohl etwas mit "Tagen" wie auch mit "Ordnen" zu tun haben können?

@laster und @89485
Ist euch aufgefallen, dass diese Substring-Arien passen können, aber nicht zwingend müssen?

[laster] set HEUTE=%date:~-4%_%date:~-7,2%_%date:~-10,2%
[Batchliebhaber] ...mit %date:~0,2% für Tag; %date:~3,2% für Monat; und %date:~6% fürs Jahr
>echo set HEUTE=%date:~-4%_%date:~-7,2%_%date:~-10,2%
set HEUTE=4.10_8._08

>echo mit %date:~0,2% für Tag; %date:~3,2% für Monat; und %date:~6% fürs Jahr
mit 08 für Tag; 04 für Monat; und 10 fürs Jahr

>echo %date%
08.04.10

@bastla
Sparsamkeit in allen Ehren (ich spar mir ja auch viele Anmerkungen), aber dieses vorwegeilende Weglassen des 1.1. und des 31.12. des Jahres...
E=DateSerial(J,12,30) <-------- dies hier stimmt IMHO nicht
S=DateSerial(J,1,2)

... das ist IMHO falsch, da zwar der 1.1. (Neujahr) in diesem Quadranten der Galaxie "überall" ein Feiertag ist und herausfällt,
aber der 31.12. (Silvester) kein bundes- oder gar EU-weiter Feiertag ist, sondern je nach Länder/Kantonsregelung ein/ein halber/kein Feiertag ist

Grüße
Biber
Mitglied: bastla
bastla 08.04.2010 um 20:45:13 Uhr
Goto Top
@Biber
(Vor allem) Hinsichtlich 31.12.: Hatte ich schon anders dort stehen, aber gelegentlich interessiert es mich dann doch, ob auch jemand liest (und / oder testet), was ich so schreibe ... face-wink

Grüße
bastla
Mitglied: Biber
Biber 08.04.2010 um 21:34:14 Uhr
Goto Top
Moin bastla,

Zitat von @bastla:
@Biber
... gelegentlich interessiert es mich dann doch, ob auch jemand liest (und / oder testet), was ich so schreibe ... face-wink
Gelesen wird ist sicher oft... allerdings sicherlich manchmal nicht so richtig schnell.
Wie soll ich's sagen, damit ich nicht in den Verdacht der Wortspielereien gerate...<grybel>..

Ah ja, manchmal ist es irgendwie ziemlich schwer ...ähh.. massiv ...mmhh... kompakt.. face-wink

Grüße
Biber