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

Variable date in cmd

Frage Entwicklung Batch & Shell

Mitglied: Grisu-Newbie

Grisu-Newbie (Level 1) - Jetzt verbinden

15.06.2007, aktualisiert 16.06.2007, 32083 Aufrufe, 5 Kommentare

Anfängerfrage cmd

Hallo, mein Name ist Christine.

Ich habe ein kleines Batchprogramm für die cmd (Windows XP SP2) geschrieben, welches meine Ordner auf D:\ auf eine USB-PLatte sichert.
Es werden bestimmte Order in das Verzeichnis Z:\backups\%date%-ordner kopiert.

Leider ergibt das dann Ordnernamen folgender Struktur: 12.03.2007-ordner. Ich würde aber gerne folgende Struktur haben: 2007-03-12-ordner. Kann man irgendwo in Windows das Format für %date% einstellen oder durch einen Befehl in der cmd umformatieren?

Besten Daynk im Voraus, falls mir jemand antwortet.

Lg Christine
Mitglied: Dani
15.06.2007 um 22:15 Uhr
Hallo Christine,
also so müsste es gehen:
01.
@echo off 
02.
 
03.
for /f "delims=. tokens=1,2,3" %%a in ('echo %date%') do set datum=%%c-%%b-%%a 
04.
echo %datum% 
05.
 
06.
pause
Ungetesteter Schnipsel.


Gruß
Dani
Bitte warten ..
Mitglied: Biber
15.06.2007 um 22:30 Uhr
Moin Grisu-Newbie,

willkommen im Forum.
Fussnote zu Danis Lösung:
Du kannst es in der FOR /F-Klammer noch etwas vereinfachen.
01.
.. 
02.
for /f "delims=. tokens=1-3" %%a in (%date%) do set datum=%%c-%%b-%%a 
03.
..
... funktioniert allerdings nur, wenn Du genau "weißt", dass das Datumsformat auf allen Rechnern, auf denen Dein Batch läuft das Format tt.mm.jjjj ist.

Für etwas robusteren Umgang mit "Datums- und Zeitvariablen im Batch" siehe das gleichnamige Tutorial dazu hier im Bereich Batch & Shell (siehe unten unter Beiträge im gleichen Bereich).

Grüße
Biber
Bitte warten ..
Mitglied: Grisu-Newbie
15.06.2007 um 23:14 Uhr
Danke euch beiden für die Tipps.

Ich fürchte, ich hjabe mich unklar ausgedrückt. Ich wollte eine Lösung, die mir bei der verwendung von md %date% einen Ordner dieser Struktur erzeugt: YYYY-MM-DD.

Beispiel:
@echo off

for /f "delims=. tokens=1,2,3" %%a in ('echo %date%') do set datum=%%c-%%b-%%a
echo %datum%
md %date%

pause
Sollte also so einen Ordner erzeugen: 2007-06-15. Es wird aber wie immer 15.06.2007 erzeugt.

Any further hints?

lg Christine
Bitte warten ..
Mitglied: Biber
15.06.2007 um 23:29 Uhr
Moin Grisu-Newbie,

nein nein, wir haben Dich schon richtig verstanden...

Nochmal ausführlich:
  • Nein, Du kannst das angezeigte Systemdatum nicht ohne Nebeneffekte in Deinem Wunschformat einstellen. Nicht die globale Variable %date% formatieren.
  • Aber: Du kannst ausweichen auf eine selbst definierte Variable namens %datum% oder %meindatum% oder im Extremfall auch tatsächlich %date% (letzteres wäre ganz äh-bäh, das tut man/frau nicht!)

Änderung bei Deinem Schnipsel:
01.
For /f ... ...DO Set Datum=.....(DeinFormat) 
02.
 
03.
REM md %date% ------->so nicht 
04.
md %Datum% <i> --------->so schon</i>
Solltest Du aus welchen Gründen auch immer auf den Variablennamen %date% bestehen, dann unbedingt die Option/die Anweisung "Setlocal" verwenden, damit diese Änderung auch nur in Deinem Batch wirkt und keine Seiteneffekte auftreten.
01.
@echo off <b> & setlocal</b> 
02.
REM "not recommended" would be my further hint... 
03.
for /f "delims=. tokens=1-3" %%a in (%date%) do set <b>date</b>=c-%%b-%%a 
04.
echo %date% 
05.
md %date% 
06.
 
07.
pause
Grüße
Biber
Bitte warten ..
Mitglied: Grisu-Newbie
16.06.2007 um 08:06 Uhr
Es war meine Schuld, sorry. Ich hatte den Code nicht genau gelesen. Super, funkt!
Nein, ich bestehe nicht darauf, %date% zu verwenden.

Gruß Christine
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
JavaScript
AngularJS Variable über Input in Funktion ausführen

Frage von badkilla zum Thema JavaScript ...

Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von Markus5579 zum Thema Batch & Shell ...

Batch & Shell
CMD cURL Access Token parsen (2)

Frage von maddig zum Thema Batch & Shell ...

Batch & Shell
CMD Verschlüsslung ( Batch ) (11)

Frage von clragon zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...