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
Kommentar vom Moderator Biber am 14.01.2010 um 16:31:36 Uhr
Entpacken und umbennen einer Zip-Datei...
#rgc = 644

Entpacken und umbennen einer Zip-Datei (täglich, Name immer anders) ?

Frage Entwicklung Batch & Shell

Mitglied: elaxer

elaxer (Level 1) - Jetzt verbinden

14.01.2010, aktualisiert 18.10.2012, 6982 Aufrufe, 10 Kommentare

Habe nur den Tipp bekommen "Das löst mit 'ner Batch-Datei", bin diesbezüglich aber völlig unwissend.

Geht darum das ich jede Nacht um 2 Uhr eine .zip-Datei per ftp auf einen Server bekomme, die .zip-Datei UND die darin enthaltene Datei haben allerdings jedesmal einen anderen Namen.

Jetzt möchte ich erreichen das "eine Batch-Datei" mir die Datei im Ordner X in den Ordner Y entpackt UND gleichzeitig umbenennt (Dateiname NACH Umbenennung sollte dabei IMMER gleich sein, d.h. "Datenbank_aktuell.bak".

Hier nochmal der Ablauf den ich mir vorstelle:

- gegen 2 Uhr wird die Datei per FTP auf Laufwerk F:/FTP/ gelegt "Daten_20100114.zip"(erledigt)
- die Datei "Daten_20100114.zip" (deren Dateiname sich ja täglich ändert) soll jetzt nach K:/Sicherung/ entpackt und gleichzeitig in "Daten_aktuell.bak" umbenannt werden.
- die Datei "Daten_2010114.zip" wird mittels Tool "SyncBank" entfernt/verschoben, damit der Ordner F:/FTP/ wieder leer ist.
- ein SQL Skript über de SQL-Server Agent sorgt dafür das die "Daten_aktuell.bak" auf meinem SQL Server wiederhergestellt wird

Ich möchte quasi morgens aufstehen und direkt auf die aktuellste Datenbank zugreifen können

Könnt ihr mir helfen ?

Vielen Dank für jede Hilfe. Ich hoffe auch ich kann mich hier bald helfend beteiligen.
Mitglied: TsukiSan
14.01.2010 um 16:18 Uhr
also erst einmal ist
Habe nur den Tipp bekommen "Das löst mit 'ner Batch-Datei", bin diesbezüglich aber völlig unwissend.
keine ausreichende Begrüßung!

Bitte mal die Nettiquette durchlesen.

Wir helfen ja wirklich gern und bestens, aber....

Gruss
Tsuki
Bitte warten ..
Mitglied: 60730
14.01.2010 um 16:24 Uhr
Servus,

  • für ein kleines Hallo / Servus machen wir fast alles
- die Datei "Daten_20100114.zip" (deren Dateiname sich ja täglich ändert)
bedeutet doch nicht etwa jahrmonattag.zip - das wäre ja zu einfach.

01.
:parameter 
02.
set today=%date:~-4%%date:~-7,2%%date:~-10,2% 
03.
if exist F:/FTP/Daten_%today%.zip echo je nach zipprogramm mit diversen parametern nach K:/Sicherung/ entpacken 
04.
if errorlevel 0 move F:/FTP/Daten_%today%.zip Daten_aktuell.bak
wobei - wenn das die einzigste zip datei in dem Ordner ist - der ganze kram noch einfacher geht.

Gruß

@Tsuki:
Zur Feier des Tages warte ich mal - ob das noch nachkommt. Aber im Prinzip muß das eine Ausnahme sein...
Bitte warten ..
Mitglied: elaxer
14.01.2010 um 16:27 Uhr
Entschuldigt, natürlich nachträglich:

HALLO AN ALLE!! Hoffe ich darf mich hier wohlfühlen!
Bitte warten ..
Mitglied: mayho33
14.01.2010, aktualisiert 18.10.2012
Hi Elaxer!

das hab ich mich vor Kurzen auch gefragt, weil siehe: http://www.administrator.de/forum/regini.exe-und-modifyprofile.exe-komb ...

Aber keine Angst. Du bekommst hier zu 99.99999% kompetente und nette Menschen zu sehen und genau so viele wertvolle Tipps.

@Tzuki: Sorry, dass du da jetzt auch was abkriegst. Du hast natürlich vollkommen recht. Die Nettiquette ist MUSS!!!

@TimoBeil: Will jetzt nix aufwärmen -Du wirs natürlich fragen: "Warum tust dus dann?"- aber ich versteh dich nicht. Wenn dir alle so auf den S.... gehen mit ihren dummen Fragen, meine eingeschlossen, warum eröffnest du dann nicht auf einem Homerechner ohne Internetanschluss dein eigenes Forum?

Dein BATCH ist jedenfalls genial!

Grüße

Mayho
Bitte warten ..
Mitglied: arndttob
14.01.2010 um 20:06 Uhr
OT: Er muss so sein, er ist Dr. House ^^
Bitte warten ..
Mitglied: mayho33
16.01.2010 um 22:37 Uhr
Sollte er vielleicht vorher dazu sagen. Kommt irgendwie nicht so gut. Mir wird da echt übel. Hab da so meine Erfahrungen.
Bitte warten ..
Mitglied: elaxer
18.01.2010 um 12:41 Uhr
Erstmal danke für eure rege Beteiligung und nochmal sorry für mein tölpelhaftes Auftreten

@Tim: Hab dir ne Nachricht geschickt

Gruß,

Stefan
Bitte warten ..
Mitglied: 60730
18.01.2010 um 14:03 Uhr
Salü,

das untenstehende script sollte selbsterklärend sein.

01.
:parameter 
02.
set today=%date:~-4%%date:~-7,2%%date:~-10,2% 
03.
:Datei(en) vorhanden 
04.
if not exist %programfiles%\7-Zip\7z.exe echo 7zip ist nicht in %programfiles%\7-Zip\ - Ordner anpassen-7zip installieren && pause 
05.
if exist F:/FTP/Daten_%today%.zip programfiles%\7-Zip\7z.exe  F:/FTP/Daten_%today%.zip -aoa -o K:\Sicherung 
06.
if errorlevel 0 move F:/FTP/Daten_%today%.zip Daten_aktuell.bak 
07.
if exist F:/FTP/Daten_%today%.zip echo bei enpacken ist ein Fehler aufgetreten && pause
@Mayho:
So ist das halt mit den Erfahrungen davon hat jeder von uns schon ein paar gesammelt.
Und ich sag hier eher niemals was - manchmal schreib ich

Gruß
Bitte warten ..
Mitglied: elaxer
20.01.2010 um 14:17 Uhr
Eine kleine Frage noch, dann biste mich los.

Das Format der Datei ist geringfügig Anders, wars mir doch Schwierigkeiten bereitet bei deiner today Variablen.

Die zu mir gesandte Datei heisst jeweils "Daten_backup_2010-01-19" also mit "-" im Datum, könntest du mir also Zeile 2 nochmal "updaten" ?

Danach sollte es sicher funktioneren.

Hier nochmal der aktuell Stand:



:parameter
set today=%date:~-4%%date:~-7,2%%date:~-10,2% <--- hier müsste geändert werden
:Datei(en) vorhanden
if not exist %programfiles%\7-Zip\7z.exe echo 7zip ist nicht in %programfiles%\7-Zip\ - Ordner anpassen-7zip installieren && pause
if exist X:/Import/Daten_backup_%today%.zip programfiles%\7-Zip\7z.exe X:/Import/ICC_backup_%today%.zip -aoa -o X:/Import/Aktuell/
if errorlevel 0 move X:/Import/Daten_backup_%today%.zip Daten_aktuell.bak
if exist X:/Import/Daten_backup_%today%.zip echo bei enpacken ist ein Fehler aufgetreten && pause

Ich nehme das jetzt so war, dass "er" prüft ob 7zip da ist, die Datei, wenn existent, entpackt (in sep. Ordner), ABER
die folgenden Zeilen verstehe ich nicht:


if exist X:/Import/Daten_backup_%today%.zip programfiles%\7-Zip\7z.exe X:/Import/ICC_backup_%today%.zip -aoa -o X:/Import/Aktuell/ <- hier wird entpackt, oder ?
if errorlevel 0 move X:/Import/Daten_backup_%today%.zip Daten_aktuell.bak <- wird hier nochmal entpackt ?
if exist X:/Import/Daten_backup_%today%.zip echo bei enpacken ist ein Fehler aufgetreten && pause <- warum Fehler ?

Wenn das im Rahmen dessen nicht passiert, könnte man die "Daten_backup_%today%.zip" nicht auch ins Unterverzeichnis X:/Import/Archiv/ kopieren NACH dem entpacken ?

Danke nochmal.
Bitte warten ..
Mitglied: 60730
20.01.2010 um 14:30 Uhr
Zitat von elaxer:
Die zu mir gesandte Datei heisst jeweils "Daten_backup_2010-01-19" also mit "-" im Datum, könntest du mir also Zeile 2 nochmal "updaten" ?
Danach sollte es sicher funktioneren.

machs doch so:
01.
:parameter  
02.
set zip=Daten_backup_%date:~-4%-%date:~-7,2%-%date:~-10,2%
..und dann nicht mehr die variable today, sondern diese im Beispiel zip genannte.

if exist X:/Import/Daten_backup_%today%.zip programfiles%\7-Zip\7z.exe X:/Import/ICC_backup_%today%.zip -aoa -o X:/Import/Aktuell/ <- hier wird entpackt, oder ?
wenn X:/Import/Daten_backup_%today%.zip vorhanden starte das 7zip und entpacke - oder ja
if exist X:/Import/Daten_backup_%today%.zip echo bei enpacken ist ein Fehler aufgetreten && pause <- warum Fehler ?
  • upps da fehlt ja wirklich ein t - meinte entpacken.
Spass beiseite bei Dateien, die mir einer schickt und die per ftp kommen - kann alles wunderbar sein, muß es aber nicht.
Ein script ohne Fehlerabfrage ist zwar möglich, aber bei manchen "silent" Geschichten einfach nicht mein Ding.
bei mir in der Firma würde ich z.b erstmal nachsehen, ob derjenige - der mir das File per ftp schickt noch mit dem FTP Server verbunden ist - bevor ich lustig die evtl. halbfertige Datei entpacke.
Und klar - das echo war ja nur ein Beispiel - wie man eine Fehlerabfrage baut.

Wenn das im Rahmen dessen nicht passiert, könnte man die "Daten_backup_%today%.zip" nicht auch ins Unterverzeichnis X:/Import/Archiv/ kopieren NACH dem entpacken

  • Gegenfrage:

Wie müsste jetzt die Zeile:
if errorlevel 0 move F:/FTP/Daten_%today%.zip Daten_aktuell.bak
geändert werden, damit das so läuft?

  • learning by doing und du sollst hier Hilfe bekommen - das was bei dir läuft - auch zu verstehen
Und deshalb auch nur der Tipp - mit der neuen Variable und kein komplettes Script - das kriegst du alleine hin

Gruß
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

(1)

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

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

Frage von JayyyH zum Thema Switche und Hubs ...

DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...