The UNIX and Linux Forums  


Go Back   Die UNIX-und Linux-Foren > Betriebssysteme > AIX
.
Google unix.com



AIX AIX ist IBM in der Branche führenden UNIX-Betriebssystem, das den Anforderungen der Anwendungen, die sich auf Unternehmen in der heutigen Markt.

Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
Faden Thread Starter Forum Antworten Last Post
If-Anweisung - Wie schreibe ich eine Null-Erklärung April Shell Programmierung und Scripting 3 04-16-2008 02:14 PM
Benötigen Sie für die Durchführung der gleichen Erklärung Legend986 Shell Programmierung und Scripting 8 10-01-2007 05:59 PM
Wie kann ich ausführen, in IF-ELSE-Anweisung laknar Shell Programmierung und Scripting 1 06-08-2007 03:54 AM
Skript nicht ausführen, INSERT-Anweisung Amruta Pitkar Shell Programmierung und Scripting 4 08-25-2006 12:14 AM
Wie kann ich eine if-Anweisung um die Ausführung auf der Grundlage der Anzahl der Zeilen in einer Datei? LordJezo Shell Programmierung und Scripting 6 05-14-2004 11:50 AM

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 10-07-2008
Prashantckc Prashantckc is offline
Registrierte Nutzer
  
 

Join Date: Aug 2008
Beiträge: 18
Controlling eine Erklärung zur Ausführung

Hi All
Ich habe ein Script, das ein Stück JOB. Die Aufträge werden in der Reihenfolge, und wenn es nicht auf eine bestimmte Arbeit, die ich will, dass dies von der Stelle, wo es nicht.

Was ich vorbereitet habe ich zwei Eigenschaften ein, die Datei enthält die gesamte Liste der Arbeitsplätze, die ausgeführt werden und die anderen, in denen ich die Arbeitsplätze, die erfolgreich ausgeführt.

Vor der Ausführung dieser Arbeiten, die ich prüfen, ob die bereits ausgeführt und wenn ja, dann habe ich den Schritt überspringen.

Das Anwesen ist mit Eintrag wie
EODJOB \u003d 6000
EODJOB \u003d 6001
EODJOB \u003d 6002
.......

Das Skript ist wie folgt
#############################################


Code:
#! /usr/bin/ksh
# A test to automate the whole EOD

echo "Starting FX Front Office EOD..."

brn_num=$1
set -e on
echo "Running FX Front Office EOD for Branch Number: $brn_num "
echo "Running FX Front Office EOD for Branch Number: $brn_num" > error.txt 2>&1

rootdir=$PWD
fullpropfile=$rootdir/FULL_FX_EOD_JOB.properties
completedpropfile=$rootdir/COMPLETED_FX_EOD_JOB.properties

if [  `grep -c "^EODJOB=" $fullpropfile` -gt 0 ]
    then
    echo "Running the EOD Process"
    for i in `grep "^EODJOB=" $fullpropfile | cut -f2 -d"="`
    do
        
        if [  `grep -c "^EODJOB="$i $completedpropfile` -gt 0 ]
            then 
            echo $i Job is already executed for branch =$brn_num and hence skipping the job..........
        else
            echo executing the job $i for branch=$brn_num
            . ./runEod.sh $i $brn_num>> error.txt 2>&1
                if [ $# -eq 0 ]   #ok execution
                    then
                    echo $i Process completed for Branch No:=$brn_num
                    echo writing into job into completed list 
                    echo 'EODJOB='$i>>COMPLETED_FX_EOD_JOB.properties
                fi
        fi

    done
echo "FX Front Office EOD for Branch Number: $brn_num run successfully"
fi
echo erasing the completed job list
echo "">$completedpropfile
###############################################

Das Problem ist, dass ich clering die Datei, die das ausgefüllte Berufseinstieg bei der letzten.
Und sagen, ob eine Arbeit geht es nicht und löschen Sie die Datei.

Was ich brauche, ist, dass nur dann, wenn die gesamte Datei erfolgreich ausgeführt, dann ist klar, nur ich die Datei, und wenn die Skripte nicht in zwischen sollte diesen Schritt überspringen.

Bitte empfehlen irgendeiner Weise

Zuletzt bearbeitet von Bakunin; 10-07-2008 auf 08:38 PM.. Grund: Bitte verwenden Sie Code-Tags bei der Buchung Skripte.
  #2 (permalink)  
Old 10-08-2008
zaxxon's Avatar
zaxxon zaxxon is offline Forum Staff  
Moderator
  
 

Join Date: Sep 2007
Ort: Deutschland
Beiträge: 2311
Hinweis: Dies ist keine spezifische AIX, hätte die in der Shell-Scripting subboard; daran erinnern, dieses beim nächsten Mal bitte

Zitat:
Das Problem ist, dass ich clering die Datei, die das ausgefüllte Berufseinstieg bei der letzten.
Und sagen, ob eine Arbeit geht es nicht und löschen Sie die Datei.

Was ich brauche, ist, dass nur dann, wenn die gesamte Datei erfolgreich ausgeführt, dann ist klar, nur ich die Datei, und wenn die Skripte nicht in zwischen sollte diesen Schritt überspringen.
Ich bin mir nicht sicher, wie Sie überprüfen, ob Ihre Arbeit war in Ordnung ist oder nicht - ich schätze, Sie haben zu analysieren Ihre error.txt ... ?
Also nur zu reagieren, und nicht einfach löschen Sie die Datei am Ende, ob es erfolgreich war oder nicht, wie Sie es atm.
Nicht sicher, ob Ihr runEod.sh produziert einen Exit-Code, den Sie benutzen können, um zu entscheiden, was als nächstes zu tun ist.
Da haben Sie das Skript und wahrscheinlich schrieb er selbst, ich denke, Sie können sich auf Ihre Arbeit?
  #3 (permalink)  
Old 10-08-2008
Prashantckc Prashantckc is offline
Registrierte Nutzer
  
 

Join Date: Aug 2008
Beiträge: 18
Vielen Dank für Ihre Eingaben.
Der Grund, warum ich hier in AIX wurde, weil der Server IBM AIX und damit ich hier. Kümmert sich um den Punkt, den Sie erwähnt, da sie einfacher zu verwalten, wenn die Dinge in die richtigen Weg.

Aber ich denke, es ist eine Art und Weise, in Shell-Scripting, durch die sagen, wenn ein Skript nicht an einem bestimmten Punkt dann in diesem Fall hält es die Ausführung selbst und nicht weiter gehen. Wie erreicht man das?

Zuletzt bearbeitet von Prashantckc; am 10-08-2008 07:41 AM..
  #4 (permalink)  
Old 10-08-2008
zaxxon's Avatar
zaxxon zaxxon is offline Forum Staff  
Moderator
  
 

Join Date: Sep 2007
Ort: Deutschland
Beiträge: 2311
Ok, kein Problem

Nicht, dass ich kenne ...
Fehlerbehandlung erfolgt in der Regel über Exit / Return-Codes und die Kontrolle, wenn sie mit / fi und zusätzlich mit Pause / weiter zu lenken durch die Logik des Scripts, wenn nötig.

Zum Beispiel, wenn in Ihrem Script-Befehle ausgeführt werden, überprüfen Sie den Wert von $? und wenn es nicht gleich Null ist, in der Regel etwas schief gegangen ist.
  #5 (permalink)  
Old 10-08-2008
joeyg's Avatar
joeyg joeyg is offline Forum Staff  
modérateur
  
 

Join Date: Dezember 2007
Ort: Haus der 17-Weltmeister Boston Celtics
Beiträge: 1311
Wink Ein möglicher Ansatz zur Lösung

Während in diesem Teil des Codes:

Code:
if [ $# -eq 0 ]   #ok execution

können Sie:

Code:
ok_exec="Y"

dann, am Ende, machen Sie folgendes:

Code:
if [ $ok_exec = "Y" ]
   then
   echo erasing the completed job list
   echo "">$completedpropfile
fi

  #6 (permalink)  
Old 10-08-2008
Bakunin bakunin is offline Forum Staff  
Bughunter Extraordinaire
  
 

Registriert seit: Mai 2005
Lage: In der linken Byte / dev / kmem
Beiträge: 1635
Zitat:
Zitat von Prashantckc View Post
Aber ich denke, es ist eine Art und Weise, in Shell-Scripting, durch die sagen, wenn ein Skript nicht an einem bestimmten Punkt dann in diesem Fall hält es die Ausführung selbst und nicht weiter gehen. Wie erreicht man das?
Wahrscheinlich möchten Sie vielleicht lesen Sie die ksh-Dokumentation zum Thema "Fallen". Es scheint mir, dass es sich dabei genau das, was Sie wollen.

Ich hoffe, das hilft.

Bakunin
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 Aus
HTML-Code ist Aus
Trackbacks sind Auf
Pingbacks sind Auf
Refbacks sind Auf




Alle Zeiten sind GMT -4. Es ist jetzt 09:09 PM.


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