Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

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

Batchdatei -> Ziel Ordner aktueller Monat

Frage Sonstige Systeme

Mitglied: esg-admin-is

esg-admin-is (Level 1) - Jetzt verbinden

09.02.2005, aktualisiert 14:09 Uhr, 22410 Aufrufe, 4 Kommentare

Hallo,

ich habe lokal auf einem Computer einige Dateien, die täglich mittels einer Batchdatei auf den Server kopiert werden. Wie kann ich es machen, dass die Daten nicht immer in den gleichen Ordner kopiert werden, sondern in den Ordner des aktuellen Monats.

Gibt es eine Variable für den aktuellen Monat?


z.b.: xcopy c:\Test s:\ziel\Monat


Danke Gruß Christoph
Mitglied: Lord-Helmi
09.02.2005 um 12:47 Uhr
Hallo,

du kannst mit einer for-Schleife den Monat aus dem Datum auslesen. In einer Batchdatei könnte das ganze so aussehen:

@for /F "tokens=1,2,3,4 delims=. " %%a in ('date /t') do set sichdate=%%c

Der Monat wird in die Variable sichdate geschreiben. Mit dieser Variablen kannst du dann in deiner Batchdatei weiter arbeiten, z.B.:

xcopy c:\Test s:\ziel\%sichdate%

Gruß
Michael
Bitte warten ..
Mitglied: esg-admin-is
09.02.2005 um 13:49 Uhr
Hallo Lord_Helmi,

danke für deine schnelle Antwort habe es ausprobiert und es geht so weit, aber zei kleine Sachen hätte ich noch, vielleicht ist das ja auch möglich?

Es müsste doch irgendwie gehen, dass er vor dem kopieren prüft, ob der ordner des Monats schon vorhanden ist, und wenn nicht, dass er diesen erstellt? Das müsste doch mit einer If-Bedingung gehen?

Kann mit einer for-Schleife doch auch das Jahr raus filtern oder, wie schaut das aus?

Danke schon mal...

Gruß Christoph

P.S.: Arbeite eigentlich recht wenig mit Batch-Dateien und habe deswegen nicht so viel wissen zu diesem Thema
Bitte warten ..
Mitglied: Atti58
09.02.2005 um 14:07 Uhr
... soweit ich sehe, gibt diese Befehlszeile schon das Jahr aus ...

@for /F "tokens=1,2,3,4 delims=. " %%a in ('date /t') do set sichdate=%%c_%%b

if not exist %sichdate% mkdir %sichdate%

... 2005_02 wegen der besseren Sortierbarkeit ...

Gruß

Atti
Bitte warten ..
Mitglied: Lord-Helmi
09.02.2005 um 14:09 Uhr
Hallo,

mit einer if-Abfrage kannst du auch nachsehen, ob ein Ordner schon vorhanden ist, z.B.:

if exist c:\testord goto punkt1
md c:\testord
:punkt1

Bei den Ordnernamen kannst du auch mit Variablen arbeiten (z.B. dem ermittelten Monat). Mit der for-Schleife zerlegst du die Ausgabe, die der Befehl date /t erzeugt, in einzelne Bestandteile. Unter delims legst du fest, welche Trennzeichen die einzelnen Bereiche trennen sollen und mit tokens sagst du ihm, wie viele / welche Bereiche du brauchst. Der erste Token erhält dann %%a, der zweite %%b usw. Wenn du die Jahreszahl mit in die Namensvergabe der Ordner einbinden willst, könnte das in etwa so aussehen:

@for /F "tokens=1,2,3,4 delims=. " %%a in ('date /t') do set sichdate=%%d_%%c

Gruß
Michael

@for /F "tokens=1,2,3,4 delims=. " %%a in ('date /t') do set sichdate=%%d_%%c
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Batch aktuellsten Ordner kopieren (2)

Frage von MmarKuss zum Thema Batch & Shell ...

Batch & Shell
Aktuellste Dateien per bash in Ordner verschieben (7)

Frage von wescraven07 zum Thema Batch & Shell ...

Router & Routing
2 Routen zu einem Ziel (10)

Frage von chewbacca001 zum Thema Router & Routing ...

Neue Wissensbeiträge
Windows Update

Novemberpatches und Nadeldrucker bereiten Kopfschmerzen

(15)

Tipp von MettGurke zum Thema Windows Update ...

Windows 10

Abhilfe für Abstürze von CDPUsersvc auf Win10 1607 und 2016 1607

(7)

Tipp von DerWoWusste zum Thema Windows 10 ...

RedHat, CentOS, Fedora

Fedora 27 ist verfügbar

Information von Frank zum Thema RedHat, CentOS, Fedora ...

Heiß diskutierte Inhalte
Router & Routing
Freigabe aus anderem Netz nicht erreichbar (21)

Frage von McLion zum Thema Router & Routing ...

Windows Server
Kennwort vergessen bei Hyper vserver 2012r (20)

Frage von jensgebken zum Thema Windows Server ...

Batch & Shell
Batch Programm verhalten bei shoutdown -p (19)

Frage von Michael-ITler zum Thema Batch & Shell ...

Festplatten, SSD, Raid
Raidcontroller funktioniert nur, wenn unter Legacy-Boot gestartet wird (13)

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