The UNIX and Linux Forums  


Go Back   Die UNIX-und Linux-Foren > Top Foren > Shell Programmierung und Scripting
.
Google unix.com



Shell Programmierung und Scripting Post Fragen zu ksh, csh, sh, bash, Perl, PHP, sed, awk und anderen Shell-Skripte und Shell-Scripting-Sprachen hier.

Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
Faden Thread Starter Forum Antworten Last Post
Bitte senden Sie die Aktivierung mail .. bvijaycom Forum Support-Bereich für Besucher & Account Probleme 1 05-19-2008 05:18 AM
Aktivierung jamalwil7 Forum Support-Bereich für Besucher & Account Probleme 0 05-15-2008 04:20 PM
Account-Aktivierung Problem Miku Forum Support-Bereich für Besucher & Account Probleme 1 08-09-2007 06:17 AM
Haben Sie nicht erhalten Aktivierung Mail pl_cyber Forum Support-Bereich für Besucher & Account Probleme 0 05-30-2007 12:09 AM
Wireless ipw2200 Aktivierung Xinu * UNIX für Fortgeschrittene und Experten 4 01-21-2007 01:25 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Suche diesen Thread Rate Thread Anzeige-Modi
  #1 (permalink)  
Old 02-03-2008
Raynon Raynon is offline
Registrierte Nutzer
  
 

Join Date: Sep 2006
Ort: SG
Beiträge: 350
Cronjob Aktivierung

Hi All,

Ich habe einen Cronjob, um ein Skript mit einer Frequenz von 10 Minuten.
Allerdings, wenn das Skript mehr als 10 Minuten, um, wie wird der Cronjob verhält?
1) Ist es ignorieren, den laufenden Prozess, und starten Sie den gesamten Prozess wieder?
2) Oder ist es stoppen, um das Skript erneut zurück, es sei denn, abgeschlossen ist?
  #2 (permalink)  
Old 02-03-2008
Smiling Dragon's Avatar
Smiling Dragon Smiling Dragon is offline Forum Advisor  
Unorganisiert User
  
 

Join Date: Nov 2007
Ort: Neuseeland
Beiträge: 922
Post

Zitat:
Zitat von Raynon View Post
Hi All,

Ich habe einen Cronjob, um ein Skript mit einer Frequenz von 10 Minuten.
Allerdings, wenn das Skript mehr als 10 Minuten, um, wie wird der Cronjob verhält?
1) Ist es ignorieren, den laufenden Prozess, und starten Sie den gesamten Prozess wieder?
2) Oder ist es stoppen, um das Skript erneut zurück, es sei denn, abgeschlossen ist?
Hängt von Ihrem cron Umsetzung aber in der Regel wird es eine weitere Kopie des Skripts 10 Minuten nach dem ersten Teil wird - unabhängig davon, wie lange der erste Lauf nimmt.

Lösungen:
  • Machen Sie Ihr Skript reentrant - dh schreiben Sie es so, daß es laufen mehrere Male auf einmal ist kein Problem.
  • Machen Sie Ihr Skript bewusst, wie oft ist es gerade ausgeführt - dh eine Lock-Datei, wenn es gestartet wird und prüfen Sie, ob diese bei jedem Start.
  • Verwenden Sie keine cron, haben Sie das Skript ausführen und verwalten sie kontinuierlich die eigenen Planung - dh Schlaf 600
  • Verwenden Sie keine cron, sich einen besseren Scheduler - je nach Ihrer Umgebung, das könnte so etwas wie anacron oder Control-M.
  #3 (permalink)  
Old 02-04-2008
Raynon Raynon is offline
Registrierte Nutzer
  
 

Join Date: Sep 2006
Ort: SG
Beiträge: 350
Zitat:
Zitat von Smiling Dragon View Post
Hängt von Ihrem cron Umsetzung aber in der Regel wird es eine weitere Kopie des Skripts 10 Minuten nach dem ersten Teil wird - unabhängig davon, wie lange der erste Lauf nimmt.

Lösungen:
  • Machen Sie Ihr Skript reentrant - dh schreiben Sie es so, daß es laufen mehrere Male auf einmal ist kein Problem.
  • Machen Sie Ihr Skript bewusst, wie oft ist es gerade ausgeführt - dh eine Lock-Datei, wenn es gestartet wird und prüfen Sie, ob diese bei jedem Start.
  • Verwenden Sie keine cron, haben Sie das Skript ausführen und verwalten sie kontinuierlich die eigenen Planung - dh Schlaf 600
  • Verwenden Sie keine cron, sich einen besseren Scheduler - je nach Ihrer Umgebung, das könnte so etwas wie anacron oder Control-M.

Hi,

Der Ausführung des Skripts kontinuierlich Mittel zu sagen, dass ich aus einer Eingabeaufforderung Fenster immer geöffnet. Wenn geschlossen, wird der Prozess beendet werden, und auch ein weiterer Nachteil ist, dass eine unendliche Schleife Skript essen eine Menge von Ressourcen, wouldn t it?
So dass ich immer noch der Ansicht, Cron ist die praktische. Aber ich habe keine Ahnung von anacron oder Control-M. Können Sie mir auf, dass die aufgeklärten?

Können Sie ein Beispiel für Skript wieder Anbieter?
Ich dachte, wenn ich könnte das Skript, ob der Prozess, um zu sehen, wenn die vorherige abgeschlossen sind, können alle Experten geben Sie mir ein paar Beispiele dafür? Ich bin mit csh durch die Art und Weise.
  #4 (permalink)  
Old 02-06-2008
Smiling Dragon's Avatar
Smiling Dragon Smiling Dragon is offline Forum Advisor  
Unorganisiert User
  
 

Join Date: Nov 2007
Ort: Neuseeland
Beiträge: 922
Zitat:
Zitat von Raynon View Post
Der Ausführung des Skripts kontinuierlich Mittel zu sagen, dass ich aus einer Eingabeaufforderung Fenster immer geöffnet. Wenn geschlossen, wird der Prozess beendet werden
Nicht in allen, so verschieben Sie sie in den Hintergrund, nicht anders als all die anderen Sachen daemonised Sie auf Ihrem System. Wenn Sie gerne schreiben zu STDOUT, leiten diese in eine Log-Datei (oder / dev / null, wenn Sie bevorzugen).
Zitat:
Zitat von Raynon View Post
und auch ein weiterer Nachteil ist, dass eine unendliche Schleife Skript essen eine Menge von Ressourcen, wouldn t it?
Viel wie vorher, keine Probleme hier entweder. Verwenden Sie schlafen auf dem Boden der Schleife zu stoppen Abreibung.
Zitat:
Zitat von Raynon View Post
So dass ich immer noch der Ansicht, Cron ist die praktische.
Ihr Anruf selbstverständlich.
Zitat:
Zitat von Raynon View Post
Aber ich habe keine Ahnung von anacron oder Control-M. Können Sie mir auf, dass die aufgeklärten?
Anacron lässt, ist eine fortgeschrittene Version von cron, kann nicht das tun, was Sie wollen. Free (I think)
Control-M ist ein Produkt, das BMC verwaltet Planung auf Unternehmensebene, es unterstützt Job Abhängigkeiten, versteht begrenzten Ressourcen und arbeitet auf verschiedenen Plattformen. Kosten ein wenig.

Google, um weitere Informationen zu diesen
Zitat:
Zitat von Raynon View Post
Können Sie ein Beispiel für Skript wieder Anbieter?
Reentrant bedeutet nur, dass es kann mehrere Male auf einmal ohne Wonky. Ein Beispiel:
Nicht rentrant:

Code:
#!/bin/sh
/usr/bin/do_some_stuff > /var/log/did_some_stuff.log
do some other things
if grep 'it worked' /var/log/did_some_stuff.log
then
  /usr/sbin/assume_we_are_good_to_go
else
  echo "Argh"
fi

Reentrant:

Code:
#!/bin/sh
/usr/bin/do_some_stuff > /var/log/did_some_stuff.$$.log
do some other things
if grep 'it worked' /var/log/did_some_stuff.$$.log
then
  /usr/sbin/assume_we_are_good_to_go
else
  echo "Argh"
fi
rm /var/log/did_some_stuff.$$.log

Das erste Beispiel könnte bis Ende Lesung wieder das Protokoll von einer anderen Instanz von sich. Die zweite Version enthält die aktuelle Prozess-ID in der Log-Datei, die verhindert, dass dies geschieht.

Ein weiterer, einfacher Weg ist, schauen Sie in die Tabelle für eine weitere Kopie des Skripts, wenn sie sofort verlassen.

Zitat:
Zitat von Raynon View Post
Ich dachte, wenn ich könnte das Skript, ob der Prozess, um zu sehen, wenn die vorherige abgeschlossen sind, können alle Experten geben Sie mir ein paar Beispiele dafür? Ich bin mit csh durch die Art und Weise.
(Vorausgesetzt, V-System im Gegensatz zu BSD)

Code:
#!/bin/csh
set numprocs=`ps -ef | grep -v grep | grep $scriptname | wc -l | awk '{ print $1 }'`
if ($numprocs == 1) then
    # carry on
else
   echo "Another instance is already running, exiting..."
   exit 0
endif

  #5 (permalink)  
Old 02-13-2008
Raynon Raynon is offline
Registrierte Nutzer
  
 

Join Date: Sep 2006
Ort: SG
Beiträge: 350
Hi,

Ich beziehe mich auf dieses Beispiel, dass Sie mir.


Code:
#!/bin/csh
set numprocs=`ps -ef | grep -v grep | grep $scriptname | wc -l | awk '{ print $1 }'`
if ($numprocs == 1) then
    # carry on
else
   echo "Another instance is already running, exiting..."
   exit 0
endif

Was ist die Bedeutung der numprocs?
Wenn es gleich 1 ist, warum sie zeigen, dass das Skript läuft nicht mehr?

Ich habe versucht eine einfache csh-Skript aus, und es nicht; t wirklich funktionieren.
Wenn er schläft, wird der Name des Skripts, die "myscriptname"Ist nicht in "Ps-ef", Es zeigt nur " usr 28951 28941 0 15:00:39 pts / 7 0:00 Schlaf 100 ".

Können Sie mir helfen?


Code:
#!/bin/csh

echo xxx
echo ppp 
echo zzz

sleep 100

  #6 (permalink)  
Old 02-13-2008
Smiling Dragon's Avatar
Smiling Dragon Smiling Dragon is offline Forum Advisor  
Unorganisiert User
  
 

Join Date: Nov 2007
Ort: Neuseeland
Beiträge: 922
Zitat:
Zitat von Raynon View Post
Ich beziehe mich auf dieses Beispiel, dass Sie mir.

Code:
#!/bin/csh
set numprocs=`ps -ef | grep -v grep | grep $scriptname | wc -l | awk '{ print $1 }'`
if ($numprocs == 1) then
    # carry on
else
   echo "Another instance is already running, exiting..."
   exit 0
endif

Was ist die Bedeutung der numprocs?
Wenn es gleich 1 ist, warum sie zeigen, dass das Skript läuft nicht mehr?
Da eine Kopie läuft, die eine, die derzeit ausgeführt werden können. Er sucht eine andere Version von sich selbst (dh 2 oder mehr) für den Fall, es gibt noch andere Kopien noch läuft.
Zitat:
Zitat von Raynon View Post
Ich habe versucht eine einfache csh-Skript aus, und es nicht; t wirklich funktionieren.
Wenn er schläft, wird der Name des Skripts, die "myscriptname"Ist nicht in "Ps-ef", Es zeigt nur " usr 28951 28941 0 15:00:39 pts / 7 0:00 Schlaf 100 ".
Funktioniert bei mir, wenn ich eine csh-Skript mit einem Schlaf in ihm sehe ich den Schlaf, _and_ die Skript ausgeführt wird.
Closed Thread

Lesezeichen

Thread Tools Suche diesen Thread
Suche diesen Thread:

Erweiterte Suche
Anzeige-Modi Rate this thread
Rate this thread:

Forumregeln
Du möglicherweise nicht neue Themen
Du möglicherweise nicht nach Antworten
Du möglicherweise nicht post-Anlagen
Du möglicherweise nicht bearbeiten Sie Ihre Beiträge

BB-Code ist Auf
Smilies sind Auf
[IMG] Code Auf
HTML-Code ist Aus
Trackbacks sind Auf
Pingbacks sind Auf
Refbacks sind Auf




Alle Zeiten sind GMT -4. Es ist jetzt 02:54 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Ltd. Sprachliche Übersetzungen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Die UNIX-und Linux-Foren Content © Copyright 1993-2009. Alle Rechte Reserved.Ad Management von RedTyger

Content Relevant URLs durch vBSEO 3.2.0