Re: Datumsanzeige in der Eingabeaufforterung bei Abfrage Date /T

Tech-Archive recommends: Fix windows errors by optimizing your registry



Helmut Rohrbeck schrieb:
> "Ecke" <maik-froehlich@xxxxxxxxxxx> schrieb:
>
>>Thomas Wildgruber schrieb:
>>
>>>On Fri, 20 Jan 2006 17:56:28 +0100, Ecke wrote:
>>>
>>>
>>>
>>>>Zum Sortieren im Explorer wäre "16.01.2006" natürlich besser.
>>>>Wo und wie kann ich das bei mir einstellen.
>>>
>>>
>>>Bei dieser Sortierreihenfolge steht dann aber ein Monat später der
>>>16.02.2006 unter dem 16.01.2006:
>>>
>>>BSP:
>>>
>>>15.01.2006
>>>15.02.2006
>>>16.01.2006
>>>16.02.2006
>>>usw.
>>>
>>>geschickter wäre es die Sortierung umzudrehen:
>>>
>>>2006.01.15
>>>2006.01.16
>>>2006.02.15
>>>2006.02.16
>>>usw.
>>>
>>>folgendes Script in einer Batchdatei (folder.bat z.B.) erledigt das für
>>>dich:
>>>
>>>(Note: Die Nummerierung der Zeilen gehören nicht dazu, jede Zeile die keine
>>>Nummer hat, gehört zu der darüber liegenden; Bei vorliegendem Script, muss
>>>die Ausgabe von 'date /t' dann aber auch auf der von dir geforderten Form
>>>'16.01.2006' vorliegen)
>>>
>>>----------------------schnipp-------------------
>>>1 @echo off
>>>2 for /f "tokens=1-3 delims=. " %%a in ('date /t') do set tag=%%a&set
>>>monat=%%b&set jahr=%%c
>>>3 mkdir %jahr%-%monat%-%tag%
>>>----------------------schnapp-------------------
>>>
>>>Bye Tom
>>
>>Hallo Tom
>>
>>die Sache ist natürlich Super.
>>Ich habe mit Batchdateien noch nicht viel gemacht. Nur so Kopieren und
>>Verzeichnisse anlegen und so.
>>Dein Script funktionier natürlich, wenn das mit dem Date /t klappen
>>würde. Das von Peter konnte ich noch nicht umsetzen. Ich habe nur was
>>mit Systemsteuerung|Ländereinstellugn|Datum kurzes Datum und langes
>>Datum gefunden . Da hat sich aber nichts bei der Ausgabe von Date /t
>>geändert. Auch nicht nach einnen "Neustart" der Eingabeaufforterung oder
>>des PC´s.
>>Ich kenn in VBA die Funktion Left oder Right. Geht da vielleicht was bei
>>deinem Script?
>
>
> Dann benutze doch einfach ein VBScript, das macht's in jedem Falle richtig:
> ---------------------------------------------------------------------------
> Set fso = CreateObject("Scripting.FileSystemObject")
> Set objArgs = WScript.Arguments
> fd = objArgs(0)
> If Not fso.FolderExists(fd) Then
> MsgBox "Wählen Sie einen Ordner aus, keine Datei!"
> WScript.Quit
> End If
> If Len(Month(Now)) > 1 Then
> Mon = Month(Now)
> Else
> Mon = "0" & Month(Now)
> End If
> If Len(Day(Now)) > 1 Then
> Tag = Day(Now)
> Else
> Tag = "0" & Day(Now)
> End If
> nfd = Year(Now) & "-" & Mon & "-" & Tag
> If Not fso.FolderExists(fd & "\" & nfd) Then
> Set f = fso.CreateFolder(fd & "\" & nfd)
> MsgBox "Neuer Ordner " & f.Path & " wurde erstellt!"
> Else
> MsgBox "Ordner " & fd & "\" & nfd & " existiert bereits!"
> End If
> ---------------------------------------------------------------------------
> Speichere den Text zwischen den Linien als "DateFolder.vbs"
> in Deinem "SendTo"-Ordner. Wenn Du nun im Windows-Explorer
> mit der rechten Maustaste auf einen Ordner klickst und
> "Senden an..." DateFolder.vbs wählst, wird in diesem Ordner
> ein neuer Unterordner mit dem aktuellen Datum als Name
> erstellt, z.B. heute: "2006-01-21".
>
> Wenn dieses Script nach dem Anlegen des Ordners auch Dateien
> dorthin kopieren soll, füge folgende Zeile am Ende hinzu:
> fso.CopyFile "C:\Quellordner\*.*", f.Path & "\", True
> und entferne ggfs. die 3 Zeilen vor dem letzten "End If":
> MsgBox "Neuer Ordner " & f.Path & " wurde erstellt!"
> Else
> MsgBox "Ordner " & fd & "\" & nfd & " existiert bereits!"
>


Hallo Helmut,

ich rufe jetzt dein VB-Script in einer Batchdatei
auf (in einen geplanten Task):
@ECHO !Lege Verzeichnis an! >>c:\Sicherung.TXT
cscript .\MKDIR_1.vbs
@ECHO !Fertig! >>c:\Sicherung.TXT

Kann ich die Ausgabe der MsgBox auch in die Datei "c:\Sicherung.TXT"
schreiben lassen??

.



Relevant Pages