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

Batch mit einer Spezieller Namenskonvention, komprimierung und Löschung

Frage Entwicklung Batch & Shell

Mitglied: Dpole86

Dpole86 (Level 1) - Jetzt verbinden

04.07.2014, aktualisiert 14:23 Uhr, 963 Aufrufe, 6 Kommentare

Guten Morgen Administratoren

Ich brauche hilfe bei einem Script

Ich kopiere von einem Ordner in einen anderen alle dateien des Ordners.
Dabei soll der Ordner in welchem Kopiert wird erst erstellt werden.
Der Name des Ordners soll dabei folgenden namen haben

Backup_Freitag_04.07.2014_08:55

Das Skript soll jeden Tag laufen
Somit ergeben sich am ende der Woche folgende Ordner

Backup_Montag_31.06.2014_08:55
Backup_Dienstag_01.07.2014_08:56
Backup_Mittwoch_02.07.2014_08:57
Backup_Donnerstag_03.07.2014_08:58
Backup_Freitag_04.07.2014_08:59

Jetzt soll das skript Prüfen ob es ein Backup mit Namen "Backups_Montag" gibt und
falls es das gibt soll er dies Löschen und ein neues erstellen.

Das Schwierigste für mich ist es den namen des aktuellen Tags zu bekommen. Für den Rest
habe ich schon einen Ansatz


Danke vielmals
Mitglied: Gersen
04.07.2014 um 10:22 Uhr
Hallo,

den Namen des aktuellen Wochentags herausfinden:

01.
set DOW= 
02.
 
03.
for /f %%g in ('wmic path win32_localtime get dayofweek^|findstr /v /r "^$"') do ( 
04.
set DOW=%%g) 
05.
 
06.
if %DOW%==0 set DOW=Sonntag 
07.
if %DOW%==1 set DOW=Montag 
08.
if %DOW%==2 set DOW=Dienstag 
09.
if %DOW%==3 set DOW=Mittwoch 
10.
if %DOW%==4 set DOW=Donnerstag 
11.
if %DOW%==5 set DOW=Freitag 
12.
if %DOW%==6 set DOW=Samstag
Gruß,
Gersen
Bitte warten ..
Mitglied: colinardo
04.07.2014, aktualisiert um 12:42 Uhr
den Namen des aktuellen Wochentags herausfinden:
alternativ geht's auch noch so:
01.
:: Wochentag holen 
02.
echo wscript.Echo WeekdayName(Weekday(Now))>"%temp%\dow.vbs" 
03.
for /f %%a in ('cscript //NOLOGO "%temp%\dow.vbs"') do set dow=%%a 
04.
 
05.
:: Löschen des Ordners 
06.
for /d %%b in ("D:\Backup_%dow%_*") do rd "%%b" /s /q 
07.
 
08.
::neuen Ordner erstellen 
09.
md "D:\Backup_%dow%_%date%_%time::=-%"
Grüße Uwe
Bitte warten ..
Mitglied: rubberman
04.07.2014, aktualisiert um 11:17 Uhr
Hallo Zusammen,

oder so ...
01.
@echo off &setlocal 
02.
 
03.
setlocal EnableDelayedExpansion 
04.
set "n=0" &for /f "tokens=2 delims==" %%i in ('wmic path win32_localtime get dayofweek /value') do ( 
05.
  for /f %%j in ("%%i") do for %%k in (Sonntag,Montag,Dienstag,Mittwoch,Donnerstag,Freitag,Samstag) do ( 
06.
    if "!n!"=="%%j" set "DOW=%%k" 
07.
    set /a "n+=1" 
08.
) ) 
09.
endlocal &set "DOW=%DOW%" 
10.
 
11.
for /f "delims=" %%i in ('dir /ad /b "Backup_%DOW%_*"') do echo gefunden: %%i 
12.
 
13.
pause
Somit ergeben sich am ende der Woche folgende Ordner

Backup_Montag_31.06.2014_08:55
...
Das ist eine infame Lüge Doppelpunkte in Verzeichnisnamen ...

Grüße
rubberman
Bitte warten ..
Mitglied: Dpole86
04.07.2014 um 12:37 Uhr
Hallo Zusammen

Danke für die Vielen antworten.
Ich konnte mir währenddessen selber was zusammenbasteln

Hier der code

01.
@ Echo On  
02.
REM This script copies the folder from CAD to networkshare and set the Date of the copyjob  
03.
 
04.
 
05.
REM -------------------------------------- 
06.
set daysofweek=Montag,Dienstag,Mittwoch,Donnerstag,Freitag,Samstag,Sonntag  
07.
REM ------------------------------------- 
08.
goto Step1 
09.
 
10.
:Step1 
11.
for /F "skip=2 tokens=2-4 delims=," %%A in ('WMIC Path Win32_LocalTime Get DayOfWeek /Format:csv') do set daynumber=%%A   
12.
for /F "tokens=%daynumber% delims=," %%B in ("%daysofweek%") do set day=%%B 
13.
echo %day%  
14.
pause 
15.
if "%day%"=="Montag" goto Montag 
16.
if "%day%"=="Dienstag" goto Dienstag 
17.
if "%day%"=="Mittwoch" goto Mittwoch 
18.
if "%day%"=="Donnerstag" goto Donnerstag 
19.
if "%day%"=="Freitag" goto Freitag 
20.
if "%day%"=="Samstag" goto Samstag 
21.
if "%day%"=="Sonntag" goto Sonntag  
22.
pause 
23.
 
24.
:Montag 
25.
set tag=Montag 
26.
goto Create_Folder 
27.
:Dienstag 
28.
set tag=Dienstag 
29.
goto Create_Folder 
30.
:Mittwoch 
31.
set tag=Mittwoch 
32.
goto Create_Folder 
33.
:Donnerstag 
34.
set tag=Donnerstag 
35.
goto Create_Folder 
36.
:Freitag 
37.
set tag=Freitag 
38.
goto Create_Folder 
39.
:Samstag 
40.
set tag=Samstag 
41.
goto Create_Folder 
42.
:Sonntag 
43.
set tag=Sonntag 
44.
goto Create_Folder 
45.
 
46.
:Create_Folder 
47.
REM Aktuelle Zeit holen und Doppelpunkte durch Punkte ersetzen 
48.
 set CURRENTTIME=%TIME::=.% 
49.
      
50.
REM Nur erste 8 Zeichen der Zeit verwenden: HH.MM.SS 
51.
set CURRENTTIME=%CURRENTTIME:~0,8% 
52.
      
53.
REM Archivnamen zusammensetzen 
54.
set ARCHIVNAME=Backup_%tag%_%DATE%-%CURRENTTIME% 
55.
      
56.
REM Verzeichnis erstellen 
57.
mkdir D:\%ARCHIVNAME%
ist vllt nicht sehr schön aber verständlich :D

jetzt hackt es aber bei der Abfrage das er das älteste Backup löschen soll. oder einfach das Backup Löscht was mit Backup_montag_ beginnt.
Bitte warten ..
Mitglied: colinardo
LÖSUNG 04.07.2014, aktualisiert um 14:23 Uhr
jetzt hackt es aber bei der Abfrage das er das älteste Backup löschen soll.
steht in meinem Script von oben
01.
for /d %%b in ("D:\Backup_%tag%_*") do rd "%%b" /s /q
Grüße Uwe
Bitte warten ..
Mitglied: rubberman
LÖSUNG 04.07.2014, aktualisiert um 14:23 Uhr
Bei mir ist es Zeile 11. Dort zwar nur als ECHO Ausgabe, aber was du mit %%i anstellst, ist ja dir überlassen...

Grüße
rubberman
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von Markus5579 zum Thema Batch & Shell ...

Batch & Shell
Dateinamen nach Zeichnen abschneiden - Batch-Shell (9)

Frage von cberndt zum Thema Batch & Shell ...

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

Frage von clragon zum Thema Batch & Shell ...

Batch & Shell
gelöst älteste dateien via batch löschen (6)

Frage von cali169 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (32)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...