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 Per Batch prüfen ob Programm länger als 5 Min. läuft, wenn ja schliessen

Mitglied: B-Real

B-Real (Level 1) - Jetzt verbinden

28.03.2013, aktualisiert 17:45 Uhr, 4246 Aufrufe, 5 Kommentare

Hallo Community,

ich möchte per Batch auf einem Windows 7 x86 PC prüfen, ob das Programm WinSCP.exe länger als 5 Minuten läuft. Wenn ja soll der Prozess beendet werden, zB mit taskkill. Ein Neustarten von WinSCP.exe ist nicht notwendig, das geschieht ohnehin mit einem anderen Task.

Hintergrund: Alle 15 Minuten läuft ein Batch Programm im Hintergrund (in der Aufgabenplanung als Task definiert), das wiederum einige weitere Batch Programme der Reihe nach aufruft. In einem dieser Batch Programme wird das Programm WinSCP.exe mit definierten Parametern gestartet. WinSCP holt dann von einem FTP Server Daten ab, falls vorhanden.
Letztens ist es aber vorgekommen dass WinSCP mit der Logfile-Meldung "Fehler beim Anzeigen des Verzeichnisses" hängen geblieben ist und dadurch die Batch Verarbeitung ewig stehen geblieben ist, was mir natürlich erst später aufgefallen ist. WinSCP sollte normalerweise nicht länger als 20-30 Sekunden brauchen um die Daten vom FTP Server abzuholen.

Mit der Suche bin ich auf ein Posting von User bastla gestossen, mit diesem Batch-Befehl kann die Process ID (PID) von WinSCP ausgelesen werden:

01.
for /f "tokens=2" %%i in ('tasklist^|findstr /b "WinSCP.exe"') do set "PID=%%i"
Somit habe ich die PID, aber wie kann ich per Batch prüfen ob die selbe PID in 5 Minuten immer noch läuft und falls ja den Prozess automatisch beenden? WinSCP wird nur einmal gestartet, es gibt also keine mehrfachen Instanzen mit verschiedenen PIDs.

Danke für eure Ratschläge.
Mitglied: Endoro
28.03.2013 um 18:27 Uhr
Hallo B-Real, du könntest die Batch 5 Minuten in einer Schleife laufen lassen und die PIDs dann überprüfen.


bb
Bitte warten ..
Mitglied: rubberman
28.03.2013, aktualisiert um 19:27 Uhr
Hallo Zusammen.

Schleife ist gut, aber die PID benötigt man eigentlich nicht.
01.
@echo off &setlocal 
02.
 
03.
set "process=WinSCP.exe" 
04.
set "max=300" 
05.
set "step=30" 
06.
 
07.
for /l %%i in (1 %step% %max%) do ( 
08.
  >nul timeout /t %step% /nobreak 
09.
  tasklist /fi "imagename eq %process%" /nh | findstr /ibc:"%process%" >nul || exit 
10.
11.
 
12.
taskkill /im %process% /f
Ausnahmsweise habe ich mal ein EXIT im Code, da sich die FOR /L Schleife sonst nicht abbrechen lässt. Ansonsten wird eben alle 30s getestet ob der Prozess noch läuft.

Grüße
rubberman
Bitte warten ..
Mitglied: DerWoWusste
28.03.2013 um 19:31 Uhr
...und noch ein Ansatz per Powershell:
Hi.

new-timespan -start (get-Process winscp).starttime |ft totalminutes
Bitte warten ..
Mitglied: B-Real
29.03.2013 um 10:47 Uhr
Danke rubberman, dein Vorschlag genügt vollkommen für meine Zwecke. Ist somit als gelöst markiert.
Bitte warten ..
Mitglied: JawCruncher
24.05.2013 um 07:59 Uhr
Ich mache so etwas sehr viel, da ich mit umfangreichen Batch-Dateien unter anderem meine SW-Verteilung mache. Also, auch wenn gelöst hier noch ein Ansatz:

Batch schreibt ganz zu Beginn eine Datei (ich nenne sie immer Flag-Datei) an eine definierte Stelle. Der Name der Datei ist der Name der Batch und die Prozess-ID. Eine zweite Batch-Datei wird zyklisch aufgerufen und prüft, ob die Flagdatei älter ist XX Minuten ist. Falls ja, wird davon ausgegangen, dass der Prozess hängt, dieser wird terminiert und eine Mail (per blat) an den Admin gesendet.

Bei mir laufen die Jobs der 2. Batchdatei sogar auf einem anderen Server. Vorteil ist, dass nicht nur die Laufzeit selber geprüft werden kann, sondern eben auch durch Tipp- oder Denkfehler verursachte Abbrüche der Batch erfasst werden.

Jens
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Batch, CMD - Prüfen ob ein Dienst existiert, nicht läuft

Frage von RycoDePsycoBatch & Shell4 Kommentare

Hallo, habt Ihr eine Idee wie man über eine Batchdatei abfragen, ob ein Dienst in der Dienste-Übersicht vorhanden ist? ...

Batch & Shell

Wenn IP erreicbar, Programm schließen

gelöst Frage von FFly82Batch & Shell2 Kommentare

Ich komm hier nicht wirklich weiter. Ich benötige eine Batch die folgendes tut: 1. Prüfen ob eine IP im ...

Windows Server

Programm in Terminalverbindung schliessen

Frage von manu90Windows Server10 Kommentare

hi zusammen, ich habe das Problem, dass User am Abend anscheinend beim beenden der Terminalsession Programme nicht immer schliessen, ...

Microsoft Office

Prüfe ob datei vorhanden, falls nicht prüfe weiter....stopp nach 10 min

gelöst Frage von thomas1972Microsoft Office2 Kommentare

Hallo, ich möchte per VBA in Excel prüfen lassen, ob eine Datei X im Verzeichnis Y vorhanden ist Diese ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 5 StundenWindows 103 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 8 StundenAdministrator.de Feedback10 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 1 TagHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 1 TagGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Server-Hardware
Welche Rolle spielt Design bei Enterprise IT Hardware?
Frage von ApolloXServer-Hardware17 Kommentare

Ich arbeite für einen internationalen Elektronikhersteller in der Forschung und meine Aufgabe ist es, Feedback von Nutzern in Hinsicht ...

Windows Netzwerk
WSUS4 und Windows 10 Updates automatisch installieren
Frage von sammy65Windows Netzwerk15 Kommentare

Hallo miteinander, ich habe mit einen neuen WSUS Server aufgesetzt Server 2016 darauf einen aktuellen WSUS. Grund, wir stellen ...

Speicherkarten
Vergessliche USB-Sticks?
Frage von hanheikSpeicherkarten14 Kommentare

Ich habe in den letzten Tagen 500 USB-Sticks mit Bilddateien bespielt. Obwohl ich die Dateien mit größter Sorgfalt kopiert ...

Switche und Hubs
Cisco SG350X-48 AdminIP in anderes VLAN
Frage von lcer00Switche und Hubs14 Kommentare

Hallo zusammen, ich habe ein Problem mir einem Cisco SG350X-48 bei der Erstinstallation wurde eine IP 192.168.0.254 (Default VLAN ...