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

Batch zum verschieben von Daten in Datumsabhängige Verzeichnisse

Frage Microsoft Windows Tools

Mitglied: netdog

netdog (Level 1) - Jetzt verbinden

28.01.2013 um 13:32 Uhr, 1435 Aufrufe, 4 Kommentare

Hallo liebe community!

Ich würde gerne für ein IPcam System, welches die aufgenommenen Bilder per FTP auf einen W2k8R2 spielt, eine saubere Ordnerstruktur einführen.
Hierzu soll ein Batchscript täglich um 00:01 per Cronjob laufen, welches folgende Schritte für mich durchführt (ich erkläre es gleich Anhand eines Beispiels):

- Im Verzeichnis C:\share\ipcam\halle ein Verzeichnis mit dem Namen des gestrigen Datums - also z.B. 27.01.2013 - anlegen
- Alle JPGs mit dem Erstellungsdatum vom Vortag (in diesem Fall z.B. 27.01.2013) in das Verzeichnis "27.01.2013" verschieben.
- eine ZIP-Datei mit hoher Kompression des Verzeichnis "27.01.2013" erstellen und im Verzeichnis C:\share\backup ablegen
- ZIP-Datei "27.01.2013.zip" aus dem Verzeichnis C:\share\ipcam\halle\ wieder löschen

Wäre super wenn ihr hierfür eine Lösung parat hättet.
Ich weiß absolut nicht (auch nach Recherche im Netz) wie ich zu einer Variablen für den Vortag, also z.B. %YESTERDAY% komme bzw. wie ich es sonst im Skript umsetzen sollte.

Vielen Dank!

LG
Bernhard.
Mitglied: LordXearo
28.01.2013 um 14:06 Uhr
Hallo,

ich weiss nicht wie komfortabel Batch bei sowas ist. Ich würde aber lieber damit anfangen Powershell zu verwenden. Da ist sowas schnell erledigt.

(Get-Date).AddDays(-1)

Mit freundlichen Grüßen

Xearo
Bitte warten ..
Mitglied: netdog
28.01.2013 um 14:08 Uhr
Vielen Dank für die schnelle Antwort!

Kannst du mir das Skript vielleicht kurz komplett machen?

Meine Scripting Kenntnisse sind nicht unbedingt die besten und in PowerShell schon gar nicht^^
Vielen Dank!

LG
Bernhard
Bitte warten ..
Mitglied: Friemler
28.01.2013, aktualisiert um 14:16 Uhr
Hallo netdog,

in Batchscript lässt sich mit Datumswerten schlecht rechnen. Dafür verwendet man am besten ein Inline-VBScript. BTW: Verzeichnisse/Dateien benennt man am besten (wegen der besseren Sortiermöglichkeit) im Format YYYY.MM.DD, so wie in folgendem Script:
01.
@echo off & setlocal 
02.
 
03.
set "GetYesterday=%TEMP%\GetYesterday.vbs" 
04.
 
05.
> "%GetYesterday%" echo.dYesterday = DateAdd("d", -1, Date) 
06.
>>"%GetYesterday%" echo.WScript.Echo Year(dYesterday) ^& "." ^& Right("0" ^& Month(dYesterday), 2) ^& "." ^& Right("0" ^& Day(dYesterday), 2) 
07.
 
08.
for /f "delims=" %%d in ('cscript /nologo "%GetYesterday%"') do ( 
09.
  set "Yesterday=%%d" 
10.
11.
 
12.
del "%GetYesterday%" 
13.
 
14.
echo %Yesterday%
Gruß
Friemler
Bitte warten ..
Mitglied: netdog
28.01.2013, aktualisiert um 15:27 Uhr
Super, vielen vielen Dank, das hat mir sehr geholfen, das war auch schon die Lösung.

LG
Bernhard
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (17)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

DSL, VDSL
DSL-Signal bewerten (14)

Frage von SarekHL zum Thema DSL, VDSL ...