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

Tasks überschneiden sich

Mitglied: Lamerking

Lamerking (Level 1) - Jetzt verbinden

17.01.2006, aktualisiert 18.01.2006, 4133 Aufrufe, 7 Kommentare

Hallo zusammen,

ich habe folgendes Problem.
Ich habe unter Windows 2000 Server einen Task aufgesetzt, der automatisch eine Batch-Datei anstartet. Die Batch startet (vereinfacht gesagt) ein Programm, dass Aenderungen durchfuehrt.

Dieser Task soll in einem bestimmten Zeitabstand laufen. Die Aenderungen des Tasks bzw. der Batch dauern aber manchmal ziemlich lang oder ziemlich kurz. Das Problem an der Sache ist, dass der Task erneut gestartet wird, obwohl bereits eine Aenderung laeuft. Es laufen also auf einmal 2 Aenderung. Gibt es eine Moeglichkeit dem Task bzw. der Batch-Datei Parameter mitzugeben, damit der darauffolgnde Task wartet, bis die Aenderungsanwendung geschlossen ist?

Ich hoffe ich habe mich verstaendlich ausgedrueckt ;)

Danke schon mal.

Gruss
Tobias
Mitglied: 13100
17.01.2006 um 21:33 Uhr
1) überprüfe die existenz oder den inhalt der datei, die du unter punkt 3 anlegst.
2) wenn sie eine 1 beinhaltet oder existiert, dann brich ab, ansonsten setze fort.
3) schreibe eine 1 in eine datei (z.b. c:\status.txt).
4-499) exzessive batchnutzung nach deinem belieben
500) am ende des tasks/batch schreibst du eine 0 in die datei oder löscht
sie einfach wieder.


mit anderen worten, lässt du einfach einen oder auch mehrere taskzyklus
ausfallen, wenn der vorige noch nich abgeschlossen is, zu erkennen an der datei.
Bitte warten ..
Mitglied: Lamerking
18.01.2006 um 18:06 Uhr
Hi,

erstmal danke für deine Tipps.
Allerdings kann ich irgendwie nix damit anfangen ;)

1.) überprüfe die existenz oder den inhalt der datei, die du unter punkt 3 anlegst.

punkt3? was meinst du mit inhalt der datei?

2) wenn sie eine 1 beinhaltet oder existiert, dann brich ab, ansonsten setze fort.
Eine 1 beeinhaltet, hmmmmm???

Könntest du es evtl. mir etwas verständlicher erklären?

Danke schon mal.

Gruß Tobias
Bitte warten ..
Mitglied: 13100
18.01.2006 um 18:22 Uhr
ok, vergiss die eins, leg einfach eine datei an.
solange diese vorhanden is, weisst du, es rennt noch was.
also überprüfst du ganz am anfang, in deinem batch/task,
ob die datei da is, wenn dem so is muss dein script
abbrechen, andernfalls darf es bis zum ende ausgeführt
werden.

ich versuchs gleich nochmal, ganz knapp:

1) überprüfen ob datei existiert (ja = abbruch)
2) datei erstellen (echo > c:\woswas.txt)
3) die eigentliche arbeit erledigen
4) am ende die erstellte datei löschen (del woswasi.txt)

für "if exist" hab ich jetz gerad nich die syntax im kopf,
lässt sich aber sicher finden.
Bitte warten ..
Mitglied: Biber
18.01.2006 um 19:04 Uhr
Moin Lamerking,

ich kann zu Angels Lösung nur Handwerkliches hinzufügen.

::----snipp SimpleSemaphoreBsp.bat
@echo off & setlocal
Set "FlagFile=%temp%\FlagFile.txt"
Set "optionalerText=Nicht vergessen: Jaffa Cake und 3 Kefir von ALDI mitbringen."
if exist %FlagFile% goto :eof
echo %optionalerText%>%FlagFile%
Start /w D:\Eine\ProggiDatei.exe
del %Flagfile% >nul
::---snapp SimpleSemaphoreBsp.bat


Alternativ zu dieser Mimik könntest Du auch in der "Prozessliste" (das, was Du auch über den Taskmanager anschauen kannst) überprüfen, ob Dein eigentliches Programm aktiv ist. Wäre eine Spur zuverlässiger.
Angels Lösung hat ihren Schwachpunkt an der Stelle, an der Dein Proggi.exe einmal abstürzt. Dann wird u. U. auch der Batch nie fertig und die Flag-Datei nie wieder gelöscht.
Bis Du sie mal von Hand weglöscht.

Die Alternative hat allerdings ihre Schwachstelle an genau dem gleichen Punkt. Wenn Dein Proggi.exe "ohne Rückmeldung" tot überm Zaun und in der Prozessliste hängt, wird bis zur manuellen Entfernung nie ein zweiter gleichnamiger Prozess starten.

Also nimm die erste simple Variante.
Grüße Biber
<div align="center" style="width:100%; vertical-align:middle; background:silver; height:20px; border-style:solid; border-width:thin; border-color:#000000" dir="ltr" lang="de"><font size="1">Alles mit weniger als 50 Zeilen ist grundsätzlich ungetestet. Vor dem Starten System sichern.</font></div>
Bitte warten ..
Mitglied: Lamerking
18.01.2006 um 19:35 Uhr
Hi, wow super für deine Ausführungen!!!

Ich hätte es so realisiert:

if exist flagfile goto :eof
echo flagfile > flagfile
Aufgaben durchführen
del flagfile

Ich kann aber auch nicht scripten ;)
Die andere Variante würde mich aber schon mehr interessieren.
Könntest du die genauer erläutern?

Dank dir schon mal.

Gruß
Tobias
Bitte warten ..
Mitglied: 13100
18.01.2006 um 19:36 Uhr
Jaffa Cake und 3 Kefir - ich weiss nich was das is, aber es klingt wie biberfutter

legen wir noch einen scheit drauf:

&bull;) ins file wird das datum/zeit geschrieben.
&bull;) nach überprüfung der datei, überprüfst du das
datum mit dem aktuellen. wenn die differenz grösser als
x is, dann löscht du die datei und brichst ab.
&bull;) der nächste zyklus rennt dann wieder auf jedenfall.

x wird so definiert dass es eigentlich die längstezeit erledigt
sein sollte. kommt natürlich auch darauf an wie heikel und
zeitnah alles läuft/laufen muss.

in c++ bist du in dem fall wohl schnelle und besser beraten.
hier kannst du auch richtiges taskmanagement veranstallten.
man könnte auch von jeden, von deinem batch ausgeführten
programmteil einen rückgabewerte in die woswasi.txt schreiben,
aber jetz fang ich an zum übertreiben und höre deshalb auf,
bevor ich freidreh.
Bitte warten ..
Mitglied: Biber
18.01.2006 um 20:27 Uhr
@7203
...Biberfutter...
Ich drücke das gegenüber meiner Familie immer als "vegetarische und vitaminreiche Ernährung" aus.
Also nur Kekse mit Orangenfüllung und Kefir und Kaffee und Zigaretten.

@Lamerking

Dass ich sinngemäß geschrieben habe, "die kompliziertere Lösung über Prozessliste hat den gleichen Schwachpunkt" hattest Du aber mitgelesen, oder?

Unter XP wird schon ein Utility namens Tasklist.exe dabei; für alle Windowsversionen gibt es aber auch ähnliche Freeware-Utilities (pslist.exe, ps.exe,...etc.)

Du könnest also deren Output ( eine mehr oder weniger lange Liste von laufenden Prozessen) nach dem Namen Deines Proggi.exe durchsuchen.
:: Beispiel im Batch:
(TaskList | find /i "Proggi.exe" >nul) && goto :eof
...MachAufgaben...

Sprich: wenn "Proggi.exe" schon läuft, dann ("&&") Batch sofort beenden.
Mit Tasklist.exe könntest du theoretisch auch prüfen/filtern, ob die Proggi.exe ein "laufender" oder ein Prozess "ohne Rückmeldung" ist.

Aber da wir ja hier von M$-Windows reden, kann eben ein Prozess ohne Rückmeldung sehr wohl noch laufen (hat nur grad keine Kapazität frei zum Rückmelden) und ein "running prozess" in der Liste kann ebenso schon klinisch tot sein...
Mehr Sicherheit/Aussagekraft bekämst Du wirklich nur mit "echten" Programmiersprachen. Aber das ist ja für diesen Zweck etwas überdimensioniert.
Oder steuerst Du Satelliten mit diesem Batch oder ist das eine Kliniks-Narkose-Dosierung oder ähnliches?

Grüße Biber
Bitte warten ..
Ähnliche Inhalte
Windows Server
Scheduled Tasks
Frage von derhoeppiWindows Server4 Kommentare

Hallo, vor kurzem habe ich einen Server migriert. Dabei wurden von mit sämtliche Scheduled Tasks exportiert und anschließend wieder ...

Windows Server

Task lässt sich nicht im Taskscheduler anlegen

Frage von Netsn00pWindows Server3 Kommentare

Hallo, ich muss bei einem Windows 2008 Server einen Task für eine automatische Sicherung per Skript erstellen. Sonst hat ...

Windows 10

Sheduled task mit GUI

gelöst Frage von bk900042Windows 104 Kommentare

Hallo Community, auf meinem VPS will ich sicherstellen, daß eine Applikation immer läuft. Um sie problemlos im gemischten Modus ...

Batch & Shell

Mit Powershell einen Task erstellen

gelöst Frage von MarabuntaBatch & Shell5 Kommentare

Hallo, ich habe diese Funktion fast komplett aus dem Internet. Powershell kenne ich schon ne weile aber mit dieser ...

Neue Wissensbeiträge
Windows 10
Windows 10 - Probleme mit Point-And-Print
Tipp von emeriks vor 10 StundenWindows 10

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 11 StundenWindows 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 2 TagenExchange Server7 Kommentare

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

Suche Projektpartner

PC Recycling Projekte mit Flüchtlingen und Kids suchen Materialspenden und Mitmacher!

Erfahrungsbericht von NettePCyclePiraten vor 3 TagenSuche Projektpartner13 Kommentare

Hallöchen liebe Kollegen, ich betreue zwei PC-Gruppen im Raum Dortmund: "Ne#e PCycle Pir@ten" & "PCschr@uber Br@mbauer" Wir sind eine ...

Heiß diskutierte Inhalte
Batch & Shell
PowerShell Auflösung zu .txt (Skript als exe) falsche Auflösung?!
Frage von timsen-96Batch & Shell26 Kommentare

Ich habe folgendes Skript um die Bildschirmauflösung herauszufinden, was auch in PowerShell super funktioniert: Add-Type -AssemblyName System.Windows.Forms $Width = ...

Humor (lol)
Windows 10 - immer für Überraschungen gut
gelöst Frage von HenereHumor (lol)18 Kommentare

Eben nach (beim) installieren der neuesten Updates für 1803 :-) Und sorry fürs Handyfoto, aber der musste sein. Nach ...

Exchange Server
Exchange Backup 10 Jahre Aufbewahrung
Frage von arccosExchange Server17 Kommentare

Hallo zusammen. Aktuell beschäftigen mich ein paar Fragen zum Thema Office365/ Exchange. 1.10 Jahre Aufbewahrungspflicht sicherstellen 2.Kann man als ...

Samba
Samba-NAS Zugriff verweigert
gelöst Frage von VernoxVernaxSamba15 Kommentare

hallo ich schaffe es einfach nicht meinem User Rechte zum schreiben zu geben. Ich habe dies alles auf nem ...