Top-Themen

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

gelöst Batch Datei Backup einer Datei und Wochentag hinzufügen im Dateinamen..WIE

Mitglied: sebattosai

sebattosai (Level 1) - Jetzt verbinden

03.03.2008, aktualisiert 18.10.2012, 15176 Aufrufe, 9 Kommentare

guten tag,

ich habe folgenden auftrag: eine datenbank datei soll gesichert werden.

das ganze soll über eine batch datei ablaufen und jedes mal soll der jeweilige wochentag an dateinamen angehängt werden. das ganze läuft von Mo - Fr und in der nächsten woche sollen diese ohne nachfrage wieder überschrieben werden, als neues backup.

ich kenn mich garnicht damit aus. hab google gefragt aber dort kommen keine lösungen die mir helfen den wochentag richtig einzufügen.

hatte vor das ganze mit xcopy zu bewerkstelligen, aber wie gesagt: wochentag muss auch dann daran


kann mir jmd helfen bitte?


vielen dank


mtg
Mitglied: miniversum
03.03.2008, aktualisiert 18.10.2012
Wie man den Wochentag ermittelt findest du hier:
https://www.administrator.de/forum/wochentag-per-batch-ermitteln-80546.h ...

Daraus kann man dann weiter folgendes machen (Ungetestet, Annahme: Variable mit Wochentag heißt %wt%):
01.
 set "quelle=C:\verzeihnis der zu sichernden dateien" 
02.
set "ziel=C:\sicherungsverzeichnis" 
03.
 
04.
FOR /F "delims=" %%i in ('dir /B /a-d "%quelle%"') do copy /Y "%%~fi" "%ziel%\%%~ni%wt%%%~xi"
Bitte warten ..
Mitglied: stbewo
03.03.2008 um 11:44 Uhr
Hi,

mit

@echo off
for /F "tokens=1-5 skip=1 delims= " %%a in ('now.exe') do (
echo Wochentag =%%a Monat = %%b Datum = %%c Uhrzeit = %%d Jahr = %%e
xcopy C:\DB\Datenbank.db c:\backup\%%a-Datenbank.db
)
pause

und dem NOW.EXE Programm aus den Reskit Tools kannst Du den Wochentag extrahieren.

Gruß
Stefan
Bitte warten ..
Mitglied: sebattosai
03.03.2008 um 11:58 Uhr
hallo

vielen dank für die hilfe, aber ich versteh nur kryptische zeichen bisher...könntet ihr vllt kommentieren was die einzelnen zeilen machen?

danke
Bitte warten ..
Mitglied: miniversum
03.03.2008 um 12:12 Uhr
Ich kommentiere/erkläre mal meinen Teil:

Zuerst werden den Variabeln %quelle% und %ziel% das Quell- und Zielverzeichniss zugewiesen.
set "quelle=C:\verzeihnis der zu sichernden dateien"
set "ziel=C:\sicherungsverzeichnis"

Dashier zerlegen ich jetzt mal damit es leichter ist zu erklären.
FOR /F "delims=" %%i in ('dir /B /a-d "%quelle%"') do copy /Y "%%~fi" "%ziel%\%%~ni%wt%%%~xi"

Ich lasse mir eine Liste erstellen mit allen Dateien im Quellverzeichnis
dir /B /a-d "%quelle%"
Diese Liste gehe ich einzeln durch
FOR /F "delims=" %%i in ('dir /B /a-d "%quelle%"') do ...
und kopiere jede Datei (mit überschreiben)
copy /Y
von der quelle
"%%~fi"
ins Ziel. Im Ziel werden sie gleich umbenant (das macht der Copy Befehl gleich mit) in: DateinamenWochentag.Endung
"%ziel%\%%~ni%wt%%%~xi"

Wie das genau mit dem %%~ni und %%~xi funktioniert kanst du in der Hilfe zum Forbefehl ganz am Ende nachlesen (in der Eingabeaufforderung "for /?" eingeben).

miniversum
Bitte warten ..
Mitglied: Biber
03.03.2008 um 12:23 Uhr
...und falls ich auch helfen darf:
ich habe folgenden auftrag: eine datenbank datei soll gesichert werden.
das ganze soll über eine batch datei ablaufen....
ich kenn mich garnicht damit aus...

Das heißt übersetzt: Du musst Dich damit auseinandersetzen.
Und "Auftrag" heißt: Es ist Dein evtl. sogar bezahlter Job.

Ich finde die Hinweise auf die -nicht schlechten und nicht unverständlichen- Hilfen zu FOR am CMD-Prompt richtig und kann nicht erkennen, dass Du Dich um eigenes Erarbeiten bemühst, wenn innerhalb von Minuten nach Posten einer Fertiglösung gleich die Bitte um Erklärung kommt.

Wir helfen hier gerne, wenn es irgendwo hakt, aber es sollte zumindest erkennbar sein, dass ein eigener Versuch vorausgegangen ist.

Grüße
Biber
Bitte warten ..
Mitglied: sebattosai
03.03.2008 um 12:31 Uhr
hi biber,

natürlich ist es meine arbeit. aber ich bat ja um hilfe wie sowas gehen kann.

ich hatte schon versucht mit xcopy

allerdings fehlt mir halt nur das mit dem wochentag und soweit ich das in den anderen threads lesen konnte würde sowas nicht gehen. daher hab ich mal versucht etwas konkreter in dem zusammenhang zu fragen..


mtg
Bitte warten ..
Mitglied: bastla
03.03.2008 um 12:48 Uhr
@stbewo

Um nicht ein externes Tool voraussetzen zu müssen, vielleicht einfach so:
01.
set "GWD=%temp%\GetWeekday.vbs" 
02.
echo WScript.Echo WeekdayName(Weekday(Date))>%GWD% 
03.
for /f %%i in ('cscript //nologo %GWD%') do set WoTag=%%i
Damit bist Du dann noch nicht einmal von der in der Systemsteuerung eingestellten Sprache / Datumsformatierung abhängig.

Grüße
bastla
Bitte warten ..
Mitglied: Biber
03.03.2008 um 14:00 Uhr
Na ja,

um es abschließend zu klären:
Mit native Batch geht es eigentlich nicht.
Weil es dort keine "Datentyp Datum"-Unterstützung gibt. Ende.

Workarounds
a) entweder aus den Trümmern des Datumstextes, z.B. "02.03.2008" Zahlenwerte bilden und selbst eine Berechnungsformel für Wochentage nachkaspern, die Papst Gregor II. und Johannes Heesters gemeinsam entwickelt haben.
-oder-
b) den Wochentags-Textstring von Now.exe/Robocopy.exe o.ä. liefern lassen, aus einer Ausgabezeile rausfieseln und mit messerscharfer Logik von "Mon" auf "Montag" oder von "Thu" auf "Thonnerstach" schliessen(s.o.)
c) oder jemand fragen, der etwas davon versteht, i.e. eine Skriptsprache, die mit Datumswerten "rechnen" kann wie z.b. VBSkript und der aus dem Batch heraus einen Einzeiler an den Hals werfen:

01.
::----Getwochentach.cmd 
02.
@echo off & setlocal 
03.
Set tmpvbs="%temp%\cwd.vbs" 
04.
Echo Wscript.echo Array("Sonntag","Montach", "Dienstag","Mittwoch", "Donnerstag", "Freitag", "Samstag")(weekday(wscript.Arguments(0))-1)>"%tmpvbs%" 
05.
For /f %%i in ('cscript //nologo %tmpvbs% %date%') do @echo [DEMO] %date%: set "Wochentach=%%i" 
Output
01.
>e:\schnipsel\GetWochentach.cmd 
02.
[DEMO] 03.03.2008: set "Wochentach=Montach"
Beispiel zu a) und b) findest Du ebenfalls im Forum.

Eine Musterlösung gibt es dafür nicht -- solange Du den Leuten nicht verständlich machen kannst, dass "Wochentags-Ordner" bei M$ nicht vorgesehen sind trotz 4x neuer Hotfixes täglich, solange musst Du individuelle Workarounds zusammenstoppeln.

Oder zumindest Copy & Pasten.

Grüße
Biber
[Edit] @bastla
Damit bist Du dann noch nicht einmal von der in der Systemsteuerung eingestellten Sprache / Datumsformatierung abhängig.
Mit meiner Variante kannst Du es sogar auf Oldenburger Platt oder Imbissbudendeutsch ausgeben...
Na gut, der Name der WeekdayName()-Funktion ist mir Montag morgens noch ganz fremd...
[/Edit]
Bitte warten ..
Mitglied: bastla
03.03.2008 um 15:02 Uhr
@Biber

Mit meiner Variante kannst Du es sogar auf Oldenburger Platt oder Imbissbudendeutsch ausgeben...
Könntest Du erstere Fassung noch posten?

... der Name der WeekdayName()-Funktion ist mir Montag morgens noch ganz fremd...
Abfallprodukt der "Scripting Games" - war mir vorher auch noch nie aufgefallen ...

Grüße
bastla

P.S.: Die von Dir verwendete Schreibweise für den Array-Index gefällt mir sehr gut (kannte ich bis vor kurzem auch noch nicht) ...
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch Datei für Dateinamen
gelöst Frage von Sabi75Batch & Shell19 Kommentare

Hallo zusammen, ich bräuchte mal eure Hilfe. Ich nutze einen Windows 7 PC und ein Apple Ipad wenn ich ...

Batch & Shell

Verzeichnisnamen zum Dateinamen per Batch hinzufügen (und kopieren)

gelöst Frage von andre-xsBatch & Shell6 Kommentare

Hallo Allerseits, Ich habe folgende Situation: - Eine Reihe von Verzeichnissen, z.B. Person1 Person2 Person3 (oft 20-30 Verzeichnisse) - ...

Batch & Shell

Dateinamen mit Batch-Datei ändern - Problem

gelöst Frage von fffffuuuuuuuhhhhBatch & Shell9 Kommentare

Hallo zusammen, ich, stelle regelmäßig .mp3-Dateien her, die folgendermaßen von meinem Audioprogramm beschriftet wird: Das Ergebnis soll aber folgendermaßen ...

Batch & Shell

Teile eines Dateinamens ändern mit Batch Datei

gelöst Frage von fffffuuuuuuuhhhhBatch & Shell4 Kommentare

Hallo, ich, stelle regelmäßig .mp3-Dateien her, die folgendermaßen von meinem Audioprogramm beschriftet wird: Interpret - Titel _xxxxxx000.mp3 die x stehen für eine ...

Neue Wissensbeiträge
Peripheriegeräte
Unterschrank für HP Drucker
Tipp von NixVerstehen vor 3 TagenPeripheriegeräte3 Kommentare

Als kurzen Freitags-Tipp möchte ich gerne meinen neuen Drucker-Unterschrank Modell Amica KS 15423W vorstellen. Das Gerät eignet sich hervorragend ...

Windows 10
Windows 10 - Probleme mit Point-And-Print
Tipp von emeriks vor 4 TagenWindows 103 Kommentare

Hi, wir kämpfen z.Z. mit einigen Druckertreibern, welche unter Win10 beim Verbinden eines Druckers von Printserver mit dem Dialog ...

Windows 10

Windows 10 1803 - Ihr Roamingbenutzerprofil wurde nicht vollständig synchronisiert

Anleitung von Deepsys vor 4 TagenWindows 101 Kommentar

Bei allen Windows 10 1803 PCs traten Probleme mit den Servergespeicherten Profilen auf. Das Abmelden dauerte sehr lange und ...

Exchange Server
Exchange - Fehler mit 2018-07 Sicherheitsupdate
Tipp von ArnoNymous vor 6 TagenExchange Server7 Kommentare

Hallo, es gibt mal wieder Freude mit den MS-Updates. KB4338814 führt dazu, dass der Exchange keine Mails mehr zustellt. ...

Heiß diskutierte Inhalte
Server-Hardware
DL380p Gen8 LEDs Laufwerksaktivität funktionieren nicht
gelöst Frage von Cisco7971Server-Hardware31 Kommentare

Hallo zusammen, ich habe hier ein seltsames Problem: Die LEDs an den Smart Carriern, die bei Laufwerksaktivität rotieren, tun ...

Windows Server
Leistungsindikatoren WS2012R2
Frage von Der.ITlerWindows Server20 Kommentare

Hallo Gemeinde, seit gestern habe ich auf zwei von meinem 8 Hardwareservern folgendes Problem, dass die Leistungsindikatoren nicht gestartet ...

VB for Applications
VBA - Vergleich eine Zelle mit einem Bereich
gelöst Frage von SilvanaSabauVB for Applications19 Kommentare

Hallo zusammen, ich hoffe es gibt jemanden der mir helfen kann !! das folgende Beispiel entspricht zwar nicht mein ...

Server-Hardware
Einsteigerfragen zu HP ProLiant DL380p Gen 8
gelöst Frage von brain2011Server-Hardware15 Kommentare

Hallo, ich habe mir einen HP ProLiant DL380p Gen 8 zugelegt, um mich grundlegend mit dieser Geräteklasse und der ...