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, 15263 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 ini Datei Datei auslesen
gelöst Frage von Juergen42Batch & Shell2 Kommentare

Hallo zusammen, ich möchte eine ini Datei auslesen mit folgenden Aufbau INHALT DER INI ID=30 NAME="test1" PFAD="K:\Kontoauszug\Test1\*.pdf" PFAD_S="K:\Kontoauszug\Test1\Sicherung\" ID=28 ...

Batch & Shell
Batch Datei Ordnerüberwachung
Frage von Phant0xBatch & Shell1 Kommentar

Hallo zusammen, könntet ihr mir helfen eine Batch Datei zu schreiben, die einen bestimmten Ordner kontrolliert, ob sich Dateien ...

Batch & Shell
Batch-Datei erstellen
gelöst Frage von tocksickBatch & Shell2 Kommentare

Hallo liebe Gemeinde! Ich bin dabei eine Batch-Datei zu schreiben welche folgendes tun soll: Die Batch soll alle auf ...

Batch & Shell
Batch Datei Kopieren
gelöst Frage von FragerBatch & Shell17 Kommentare

Hallo Zusammen, ich bekomme es nicht hin ich muss aus einem Ordner (liegt auf einem Server) eine von vielen ...

Neue Wissensbeiträge
Humor (lol)
Administrator.de Perlen
Tipp von DerWindowsFreak2 vor 2 TagenHumor (lol)3 Kommentare

Hallo, Heute beim stöbern auf dieser Seite bin auf folgenden Thread aus dem Jahre 2006 gestossen: Was meint ihr? ...

Erkennung und -Abwehr
OpenSSH-Backdoor Malware erkennen
Tipp von Frank vor 2 TagenErkennung und -Abwehr

Sicherheitsforscher von Eset haben 21 Malware-Familien untersucht. Die Malware soll Hintertüren via OpenSSH bereitstellen, so dass Angreifer Fernzugriff auf ...

iOS
WatchChat für Whatsapp
Tipp von Criemo vor 6 TageniOS5 Kommentare

Ziemlich coole App für WhatsApp User in Verbindung mit der Apple Watch. Gibts für iOS sowohl als auch für ...

iOS
IOS hat nen Cursor!
Tipp von Criemo vor 6 TageniOS5 Kommentare

Nette Funktion im iOS. iPhone-Mauszeiger aktivieren „Nichts ist nerviger, als bei einem Tippfehler zu versuchen, den iOS-Cursor an die ...

Heiß diskutierte Inhalte
Grafikkarten & Monitore
PCIe 1.0 Grafikkarte für 3840x2160
Frage von Windows10GegnerGrafikkarten & Monitore29 Kommentare

Hallo, mein Vater hat einen neuen Monitor gekauft, welcher eine native Auflösung von 3840*2160 hat. Diese muss jetzt auch ...

Windows 10
Windows Enterprise 1809 Eval nicht bootbar
Frage von Sunny89Windows 1022 Kommentare

Hallo zusammen, bevor ich mich jetzt noch stundenlang rumärger wollte ich euch fragen, ob Ihr die gleichen Probleme habt ...

Windows Server
Dienstnamen und oder Deutsche und Englische Beschreibung in services.msc gleichzeitig anzeigen
gelöst Frage von vafk18Windows Server21 Kommentare

Guten Morgen, die Suche nach Diensten in services.msc gestaltet sich immer wieder schwierig, weil mir je nach Aufgabe die ...

Linux
Info Monitor für eine Schule
gelöst Frage von CAT404Linux13 Kommentare

Moin, ich möchte einen Infomonitor betreiben; derzeit läuft da ein Windows 10 Rechner bei dem Firefox beim Start in ...