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

Erste Batch..komme nicht weiter

Frage Entwicklung Batch & Shell

Mitglied: aesthetics

aesthetics (Level 1) - Jetzt verbinden

15.02.2011, aktualisiert 18.10.2012, 3926 Aufrufe, 28 Kommentare

Hi,
ich habe eine Aufgabe bekommen, inder ich eine batch schreiben soll...
habe schonmal sowas gemacht nur war dies wesentlich leichter und auch eher unwichtig
...

Das Problem besteht wie folgt ich habe eine Aufgabe bekommen die lautet
"In einem Unternehmen werden IP-Überwachungskameras eingesetzt. Diese Kameras sind so eingestellt, dass diese jede Minute
ein Bild JPG-Format per FTP auf einen Server laden.
Dadurch fallen jeden Tag 1.440 Bilder pro Kamera an, da die Bilder archiviert werden sollen und jeden Monat pro Kamera 43.200 Bilder anfallen, sollen die Bilder in Ordner und Zip-Archive gepackt werden.

Es soll ein Script(batchdatei) geschrieben werden mit dem die JPG Dateien aus einem Ordner gepackt
und in einen Ordner mit aktuellem Datum verschoben werden sollen.

Das Script wird täglich um 23:59 uhr per taskplaner gestartet."

ich bin bisher soweit gekommen und habe in meiner .bat das hier stehen....

f2faed82b01aa552a2508f786a6c0722 - Klicke auf das Bild, um es zu vergrößern

wenn ich jedoch ausführe kommt der Fehler hier:

a9d5669886b203532ee391d1cdd42d2c - Klicke auf das Bild, um es zu vergrößern

die Edit. datei is zur Hilfe da ich verwirrt dank dem "C:hat keine bezeichnung" aber ich habe ja den Weg angegeben...
bin echt ratlos...
hoffe mir kann geholfen werden da ich fast keine Ahnung davon habe
LG
28 Antworten
Mitglied: H41mSh1C0R
15.02.2011 um 10:31 Uhr
Dir kann geholfen werden: --> http://www.antonis.de/dos/batchtut/index.htm

Die Arbeit des selber Lesens wird dir aber keiner abnehmen.

Die Tutorials sind für den Einstieg nicht schlecht.

vG
Bitte warten ..
Mitglied: Skyemugen
15.02.2011 um 10:47 Uhr
Aloha,

1.] toller screenshot aber bitte mach nächstes mal <code></code> mit dem Inhalt ;)

2.] if exist erebnis.rar del ergebnis.rar - so wird das nix =)

3.] set "wrarpath=...." gut, dass du das gesetzt hast aber was fängt Batch jetzt damit an, wo doch kein Bezug darauf vorhanden ist?

greetz André
Bitte warten ..
Mitglied: SlainteMhath
15.02.2011 um 10:55 Uhr
Moin.

damit
01.
dir /D %datapath% >> ergebnis.rar
hängst Du die Text Ausgabe von "dir /D...." an die rar-Datei an - ist das witrklich das was du willst?

Tipp: Zum packen von ZIPs per Batch benutze ich immer 7z - kostet nix und kann alles per Kommandozeile.

lg,
Slainte
Bitte warten ..
Mitglied: Biber
15.02.2011 um 10:59 Uhr
Moin aesthetics,

willkommen im Forum.

Es bringt dich nicht so schnell weiter, wenn du jetzt wegen fehlender handwerklicher Kenntnisse in Panik verfällst.
Die Handwerklichen Feinheiten sind das geringste Problem.
Versuche bitte trotz der vielleicht immens schweirig erscheinenden Aufgabe systematisch und schrittweise heranzugehen.

Formuliere doch erstmal den gewollten Ablauf (das, was in der Aufgabenstellung abstrakt beschrieben ist) in ein paar Zeilen Pseudocode zu übersetzen.

Wenn wir dann ein paar "...wenn ....dann... sonst".. Strukturen haben, dann können wir zeilenweise in Batch übersetzen.

Wie würdest du denn dein Vorgehen Schritt für Schritt beschreiben, wenn du kein Wort Batch sprichst?

Grüße
Biber
Bitte warten ..
Mitglied: aesthetics
15.02.2011 um 11:24 Uhr
Also
Ich danke erstmal für die schnellen Antworten
@ Biber
Hmm ja wie wollte ich vorgehen...
1. Zuerst einmal hatte ich vor den Weg/Pfad anzugeben

2. Befehl/Code zum packen in ein Archiv mit den .JPG herausfinden um es möglich zu machen die 4 JPEG's in ein Archiv in den Zielordner
"IP-Zie" zu transportieren

3. Wenn Fehler solange versuchen und testen und ergründen WARUM es nicht geht... bis es geht (aber ich kann langsam nichtmehr weil ich an *Screen2* schon geschlagene 9std sitze bis ich endlich Hilfe wollte und hier nun frage...

4. Den Script/batch in den Taskkplaner einbinden damit er wie vorgegeben täglich um 23:59 ausgeführt wird...

(5). Falls ich etwas vergessen habe bitte ich um Berichtigung

lg
Bitte warten ..
Mitglied: 60730
15.02.2011, aktualisiert 18.10.2012
moin,

unabhängig von den anderen....und @echo off

Diese Kameras sind so eingestellt, dass diese jede Minute ein Bild JPG-Format per FTP auf einen Server laden.
  • Wenn das eine "Aufgabe" im Sinne von "Strick mir was" und der vorgeschobene Grund dieser ist:
da die Bilder archiviert werden sollen und jeden Monat pro Kamera 43.200 Bilder anfallen, sollen die Bilder in Ordner und Zip-Archive gepackt werden.

Dann ist es ok - wenn der Grund aber tatsächlich der oben genannte ist - dann vergesst das Thema.

jpgs sind bereits komprimierte Dateien, die werden durch zippen nicht kleiner.
Zum Thema Batch und zip hat die Forensuche mehr Treffer, als meine Antwort Buchstaben.

Gruß
Bitte warten ..
Mitglied: aesthetics
15.02.2011 um 11:57 Uhr
@TimoBeil

Wenn der Grund der wäre das ich mir denke *schreib hier hin die werdens schon für mich lösen*
dann hätte ich es erst garnicht versucht diese Aufgabe zu lösen...
ich brauche aber hilfe... DA ich absolut nicht weiterkomme
nach mehreren Std. googeln und keinen wirklichen treffern würden die meisten aufgeben, wenn sie nicht weiterkommen
so wie ich zur zeit...
ich kann dich schon verstehen, da es sicher viele geben die nach dem Prinzip "schreib und ich kopiers mir" denken und hier auch tätig sind...

aber ich benötige hilfe bei den codes/befehlen... denn wie gesagt ich habe wirklich keine ahnung... das was ich bisher geschafft habe sind mühevoll zusammengefragte Zahlen/Buchstaben/Zeichen die mir leider noch nicht viel beibringen konnten...

lg
Bitte warten ..
Mitglied: manuel-r
15.02.2011 um 12:09 Uhr
Mit dem Code an sich setze ich mich jetzt nicht mehr auseinander; das haben andere ja schon gemacht.
Ich hätte aber einen kleinen Software-Tipp für dich, der genau das macht was du willst: Cobian Backup
Bitte warten ..
Mitglied: 60730
15.02.2011 um 12:09 Uhr
moin,

ich kann dich schon verstehen, da es sicher viele geben die nach dem Prinzip "schreib und ich kopiers mir" denken und hier auch tätig sind...
  • yupp - aber das meinte ich in deinem Fall nicht.

  • jpgs sind bereits komprimierte Dateien, die werden durch zippen nicht kleiner.
Ergo ist das nur dann einigermaßen sinnvoll, wenn das eine Aufgabe zum lernen sein soll und nicht um das "Problem" zu lösen.

Gruß
Bitte warten ..
Mitglied: aesthetics
15.02.2011 um 12:10 Uhr
@SlainteMhath

Ne, ich möchte/muss ja eigentlich JPGs anhängen/packen

wenn das stimmt dann kann es ja auch nichtmal klappen....

bitte trotzdem um Hilfe

lg
Bitte warten ..
Mitglied: aesthetics
15.02.2011 um 12:12 Uhr
@manuel-r

danke werde ich mir mal ansehen

*verbesserung*

Ich habe mir die Seite angeschaut... kann aber nichts hier runterladen... die einzigen programme die ich nutzen darf/soll sind Winrar/ 7-zip
aber danke werde mir das trotzdem mal genauer ansehen wenn ich zu haus bin

@TimoBeil

ja es ist eine LERNAUFGABE
aber ich habe keine Bücher oder Ähnliches... also frage ich hier hoffnungsvoll
Und es ist ja auch nicht Ziel zu Komprimieren
Die JPGs sollen nur archiviert werden ob das Sinn macht oder nicht steht außer frage für mich jedenfalls
danke trotzdem für die aufmerksamkeit

lg
Bitte warten ..
Mitglied: BigWim
15.02.2011 um 13:06 Uhr
Moin aesthetics,

aber ich habe keine Bücher oder Ähnliches... also frage ich hier hoffnungsvoll
Zum Einstieg schlage ich vor, dass Du Dich auf jeden Fall mit den Grundlagen beschäftigst. Ganz viel davon findest Du hier.

Vorher dachte ich von mir, ich sei ein fortgeschrittener Anfänger bis ich die Anleitungen von Biber gelesen habe ....

@Biber
An dieser Stelle mal die Gelegenheit Danke zu sagen!

Markus
Bitte warten ..
Mitglied: 60730
15.02.2011 um 13:09 Uhr
moin,

dann fasse das doch mal zusammen...

  • jeden Tag 1.440 Bilder pro Kamera
  • das skript soll um 23.59 gestartet werden

  • "Vielleicht" schafft es das Script und der Server alle 1.440 Dateien einer Kamera in einer minute zu bewegen - davon ausgehen würde ich nicht
  • pro Kamera bedeutet es sind mindestens 2 - also schafft das Skript das ganz sicher nicht.

Ergo?
  • Du kannst keine echte Variable Datum nehmen, sondern mußt die gleich in der ersten Zeile definieren.
(Echo off gehört da nicht rein)

Ich helfe dir - gerne - aber in einem anderen Sinn - und derjenige, der dir die Aufgabe gestellt hat - wird sich freuen, denn google indiziert "uns" sehr schnell.

Ein bestimmter "Kollege" der dir ganz kurz vor 11.00 eine Antwort geschrieben hat, hat die Anleitung zum Thema Batch und Datumsformat geschrieben.
  • finde diese und lese grob drüber.

Gruß
Bitte warten ..
Mitglied: aesthetics
15.02.2011 um 13:15 Uhr
@TimoBeil

dankesehr bin schon am lesen *g*
und nachsehen was MIR wohl helfen könnte bei dieser sache

lg
Bitte warten ..
Mitglied: bastla
15.02.2011 um 16:25 Uhr
@T-Mo
alle 1.440 Dateien einer Kamera in einer minute zu bewegen
... ist ja nicht nötig - der Batch muss ja nur schneller sein (durch passende Sortierung), als die Kamera die alten Bilder überschreiben kann - wenn sie das denn tut; ansonsten lassen sich die Bilder doch bequem anhand des Dateidatums verarbeiten ...

Grüße
bastla
Bitte warten ..
Mitglied: 60730
15.02.2011 um 16:34 Uhr
[OT]
Salü Bastla..

naja für die erste Batch gleich mit den ganz harten Methoden ankommen?

btw: ich sehe was, was du nicht siehst

Der User aesthetics hat dein fehlendes Prozent aus dem anderen Fred geklaut

Schau mal ins "Bild" - die erste Zeile
f2faed82b01aa552a2508f786a6c0722 - Klicke auf das Bild, um es zu vergrößern
[/OT]
Grüße aus dem Urlaub
Bitte warten ..
Mitglied: Skyemugen
15.02.2011 um 16:37 Uhr
Aloha T-Mo,

[OT]
Wer weiß, wo er herkommt *gg* andere Länder, andere (at)-Zeichen *^__^*
[/OT]

greetz André
Bitte warten ..
Mitglied: aesthetics
16.02.2011 um 08:31 Uhr
Also,
nach mehrstündigem Lesen und testen bin ich soweit, das er die Bilder in ein Archiv packt...
nur ich muss noch rausfinden WIE ich das "Aktuelle Datum" beihabe...
und nach dem packen muss ich es noch rausfinden wie die Quelle danach gelöscht wird...

kann mir da jemand Tipps geben oder Ähnliches?
bei mir siehts bisher so aus...
____________________________________
%echo off
set prog="C:\Programme\7-Zip"
set datapath="C:\Aufgabe\IP-Kam"
set outout="C:\Aufgabe"

"%prog%\7z.exe" a %output%\ergebnis.zip %datapath%\
_______________________________________________
ich hoffe da kann mir noch wer helfen? =/

lg
Bitte warten ..
Mitglied: Skyemugen
16.02.2011 um 08:59 Uhr
Aloha,

das aktuelle Datum gibt es per %date%, was zum Archivieren vllt. nicht so nützlich ist, daher wäre so etwas wie
01.
REM TT.MM.JJJJ soll zu JJJJ-MM-TT 
02.
FOR /f "tokens=1-3 delims=." %%a in ("%date%") do Set Datum=%%c-%%b-%%a 
03.
echo %Datum%
für dich nützlich (oder noch mit 'nem _ vor %Datum% dann),

P.S.: Achte auf korrekte Schreibweise
set outout ... wird wohl nichts bringen
und %echo off wurde bereits angekreidet

greetz André
Bitte warten ..
Mitglied: aesthetics
16.02.2011 um 09:07 Uhr
danke für die schnelle Antwort

nunja outout ist wirklich etwas fragwürig... kommt vom abtippen :D
  • set output="C:\Aufgabe"

ich muss jetzt noch Die Quelldateien löschen..
sprich
nach dem Archivieren den Ordner leeren wo die enthaltenen bereits gepackten Dateien sind

lg
Bitte warten ..
Mitglied: aesthetics
16.02.2011 um 11:05 Uhr
Habe es geschafft *jubel*

sieht wie folgt aus...

__
01.
set prog="C:\Programme\7-Zip" 
02.
set datapath="C:\Aufgabe\IP-Kam" 
03.
set output="C:\Aufgabe" 
04.
 
05.
set jahr=%date:~-4% 
06.
set monat=%date:~-7,2% 
07.
set tag=%date:~-10,2% 
08.
 
09.
"%prog%\7z.exe" a %output%\%jahr%%monat%%tag%.zip %datapath%\ 
10.
 
11.
del /Q C:\Aufgabe\IP-Kam\*.jpeg
__

endlich *freu*

so nun aber noch eine Frage die mich interessiert...
Kann darüber ein automatisches Protokoll geführt werden ?
sprich das eine Textdatei angelegt wird mit der bestätigung nach dem Ausführen mit z.B. Erfolgreich oderso?
geht das?

lg

[Edit Biber] Codeformatierung [/Edit]
Bitte warten ..
Mitglied: Skyemugen
16.02.2011 um 11:28 Uhr
Aloha,

du meinst so etwas wie

echo %date% - %time%: Der Vorgang wurde erfolgreich ausgeführt >>"C:\Irgendwohin\Archiv.log"
? ( „>>“ hängt jedes Mal die Zeile in der Logdatei an „>“ würde die Datei jedes Mal überschreiben)

greetz André

P.S.: Versuch's mal mit <code></code> im Forum, dann sparst du dieses unterstreichen des Textes (und es sieht auch schöner aus)
edit: Ah, dem Biberle war's auch zu unformatiert *g*
Bitte warten ..
Mitglied: 60730
16.02.2011 um 11:41 Uhr
moin,

Biber hat dir ja bereits die Codetags untergejubelt und im gleichen Sinn wäre auch, wenn du nicht
%jahr%%monat%%tag%.zip
sondern z.B
%jahr%-%monat%-%tag%.zip
nehmen würdest - das erleichtert das lesen.

Dann ist das Script so "gefährlich" - bzw. kann gefährlich sein.
Du erinnerst dich - wegen einer Archivierung soll das ganze laufen.

  • Hast du in einem Ordner keine Rechte, oder ist der Plattenplatz voll - läuft das ab und löscht auf jeden Fall die Bilder.
  • Dann löscht das Script alle Bilder, auch hier - um 23.59 läuft das ganze ab und während das Script läuft kommen neue Bilder dazu, die nicht archiviert sind und die werden trotzdem gelöscht.

  • kleiner Tipp mit ">" schreibst du eine Ausgabe aus der Dosbox in eine Datei
  • kleiner Zusatztipp mit "errorlevel" oder "%errorlevel%" findest du heraus, welchen Status der vorherige Job hatte.
  • mit "if" kannst darauf reagieren.

Gruß
Bitte warten ..
Mitglied: bastla
16.02.2011 um 11:45 Uhr
mit "errorlevel" oder "%errorlevel%" findest du heraus, welchen Status der vorherige Job hatte.
... wobei ich eher zu
01.
"%prog%\7z.exe" a %output%\%jahr%%monat%%tag%.zip %datapath%\ && ( 
02.
    del /Q C:\Aufgabe\IP-Kam\*.jpeg 
03.
    echo %date% - %time%: Der Vorgang wurde erfolgreich ausgeführt >>"C:\Irgendwohin\Archiv.log" 
04.
)
tendiere - ist aber (gerade auch in diesem Fall) eher Geschmackssache ...

Grüße
bastla
Bitte warten ..
Mitglied: Skyemugen
16.02.2011 um 11:48 Uhr
Aloha T-Mo,

indeed, vielleicht sollten man per for /f in dir soundso das ganze Archivieren und Löschen ablaufen lassen, so könnte man dann doch verhindern, dass neuere Bilder gelöscht werden, oder sehe ich das falsch?

greetz André
Bitte warten ..
Mitglied: 60730
16.02.2011 um 11:52 Uhr
Salü Bastla:

[OT]
genau den && || wollte ich ihm nicht zeigen, denn der ist außer im hiesigen Forum nirgendwo im deutschsprachigen Raum unterwegs.
[/OT]
@ Sky:
naja Geschmackssache - lass ihn mal selber drauf kommen, Bastla hats oben ja schon angedeutet, wie das funktioniert.
(siehe mein Einwand 23.59)

Gruß
Bitte warten ..
Mitglied: bastla
16.02.2011 um 12:14 Uhr
[OT] @T-Mo
genau den && || wollte ich ihm nicht zeigen, denn der ist außer im hiesigen Forum nirgendwo im deutschsprachigen Raum unterwegs.
Naja, dann ist es doch eine Belohnung dafür, das richtige Forum gefunden zu haben ...

BTW: Dass diese Methode ev seltener verwendet wird, kann ja kein Entscheidungskriterium sein (und wenn schon, dann noch eher als positiver Faktor).

Grüße
bastla
[/OT]
Bitte warten ..
Mitglied: aesthetics
16.02.2011 um 12:44 Uhr
01.
set prog="C:\Programme\7-Zip" 
02.
set datapath="C:\Aufgabe\IP-Kam" 
03.
set output="C:\Aufgabe" 
04.
 
05.
 
06.
set jahr=%date:~-4% 
07.
set monat=%date:~-7,2% 
08.
set tag=%date:~-10,2% 
09.
set filename="%jahr%%monat%%tag%" 
10.
 
11.
%prog%\7z.exe a %output%\%filename%.zip %datapath%\ >> %output%\%filename%.txt 
12.
 
13.
del /Q C:\Aufgabe\IP-Kam\*.jpeg 
14.
 
15.
echo Erfolgreich %time:~0,8%   %date:~-10,2%.%date:~-7,2%.%date:~-4%>> %output%\%filename%.txt
So sieht das nun bei mir aus auch wenn es vielleicht nicht euren befriedigungswünschen entspricht
es klappt jedenfalls
danke an alle für die Hilfe

lg und schönen Tag noch ;)
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...

Windows Tools
gelöst Aussendienst Datensynchronisierung (12)

Frage von lighningcrow zum Thema Windows Tools ...

Windows Server
RODC über VPN - Verbindung weg (10)

Frage von stefan2k1 zum Thema Windows Server ...