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
Kontrolle für die Existenz der Tabelle in Oracle kjs SUN Solaris 0 10-19-2007 04:21 AM
Überprüfung der Existenz einer Datei .. igandu Shell Programmierung und Scripting 7 06-13-2007 04:47 AM
Kontrolle Datei Existenz DILEEP410 Shell Programmierung und Scripting 3 01-24-2007 12:43 PM
Datei-Existenz mpang_ Shell Programmierung und Scripting 2 03-27-2006 12:27 PM
XML-Datei im Unix-Wohnung oscarr UNIX für Fortgeschrittene und Experten 2 08-01-2001 09:11 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 04-25-2008
Ariean Ariean is offline
Registrierte Nutzer
  
 

Join Date: Apr 2008
Beiträge: 25
Prüfung auf Existenz einer Datei im UNIX-Wohnung!

Hi All,

Ich habe eine Verpflichtung, wo ich zu überprüfen, für die Existenz einer Datei ausführen und später einige pmcmd, die die informatica. Ich habe viele Möglichkeiten, aber nicht erfolgreich war Könnten Sie bitte etwas Licht werfen. Nachstehend sind die Probe-Codes ich geschrieben habe.

Beispiel 1:

#! / bin / ksh
file_path \u003d / export / home / orainfodev / sam s
filename \u003d "voke.txt"
für die Datei in $ file_path, muss
[[-F $ filename]]
pmcmd startworkflow-u Administrator-p SADMIN-s odsdbq1: 4001-F IR_Custom WF_Test_Mapping
getan

Beispiel 2:

#! / bin / ksh
if (!-e "/ u01/app/informatica/7.1.4/server/TgtFiles/sample.txt")
dann
pmcmd startworkflow-u Administrator-p SADMIN-s odsdbq1: 4001-F IR_Custom WF_Test_Mapping
sonst
echo "Kann leider nicht den Workflow, denn es gibt keine Datei, die in den Ordner"
fi

Beispiel 3:

#! / bin / ksh
filename \u003d "export / home / orainfodev / invoke.txt"
if test-f "$ filename", dann
echo "Datei existiert"
sonst
echo "Datei existiert nicht"
fi


Beispiel 4:

#! / bin / ksh
echo "Bitte geben Sie einen Dateinamen"
Lesen Sie fname
if test-f "$ fname"
then echo "$ fname existiert"
sonst
echo "$ fname nicht vorhanden"
fi

Thanks & Regards,
Ariean.
  #2 (permalink)  
Old 04-25-2008
Ära era is offline Forum Advisor  
Herder sinnlosen Katzen (Am Sabbatical)
  
 

Join Date: März 2008
Location: / es / ist / nur / bin / sh
Beiträge: 3652
Alle Ihre Versuche sind sehr eng. Was kann ich sagen, die letzte sollte gearbeitet haben - können Sie sagen, welche Fehlermeldung erhalten Sie?

Zitat:
Beispiel 1:

#! / bin / ksh
file_path \u003d / export / home / orainfodev / sam s
filename \u003d "voke.txt"
für die Datei in $ file_path, muss
[[-F $ filename]]
pmcmd startworkflow-u Administrator-p SADMIN-s odsdbq1: 4001-F IR_Custom WF_Test_Mapping
getan
Die F-Befehl ist gut, aber Sie sind nicht mit dem Ergebnis für alles. Sie wickeln könnte, dass in einer "if" oder andere Bedingungen, und es hätte funktioniert. Auch die file_path muss in doppelte Anführungszeichen, wenn Sie erklären es. Vermutlich die file_path Wege Verzeichnissen, in denen Sie suchen möchten voke.txt?


Code:
for file in /export/home/orainfodev/sam s ; do
    if test -f $file/voke.txt; then
        pmcmd startworkflow -u Administrator -p SADMIN -s odsdbq1:4001 -f IR_Custom WF_Test_Mapping
    else
        echo "$0: $file/voke.txt: not found" >&2
    fi
done

(Ist das nicht der Workflow-Befehl soll, beziehen sich die Datei, die Sie auch für die Kontrolle, auch wenn? Entweder Abstieg in das Verzeichnis, in dem Sie es, oder über ein Kommandozeilen-Parameter.)

Zitat:
Beispiel 2:

#! / bin / ksh
if (!-e "/ u01/app/informatica/7.1.4/server/TgtFiles/sample.txt")
dann
pmcmd startworkflow-u Administrator-p SADMIN-s odsdbq1: 4001-F IR_Custom WF_Test_Mapping
sonst
echo "Kann leider nicht den Workflow, denn es gibt keine Datei, die in den Ordner"
fi
Die Klammern in der "wenn" nicht korrekte Syntax, aber auch, ganz in der Nähe.

Zitat:
Beispiel 3:

#! / bin / ksh
filename \u003d "export / home / orainfodev / invoke.txt"
if test-f "$ filename", dann
echo "Datei existiert"
sonst
echo "Datei existiert nicht"
fi
Sie müssen ein Semikolon vor dem "dann", oder sie auf einer neuen Zeile. Dann ist dieses funktionieren würde. Sheer Pech stolpern Sie nicht über die Lösung in diesem Punkt.

Zitat:
Beispiel 4:

#! / bin / ksh
echo "Bitte geben Sie einen Dateinamen"
Lesen Sie fname
if test-f "$ fname"
then echo "$ fname existiert"
sonst
echo "$ fname nicht vorhanden"
fi
Dies funktioniert bei mir unter bash. Einige Shells können wählerisch zu sein, die neue Strecken nach ", dann" und "anderes", vielleicht.
  #3 (permalink)  
Old 04-25-2008
DukeNuke2's Avatar
DukeNuke2 DukeNuke2 is offline Forum Staff  
Soulman
  
 

Join Date: Jul 2006
Standort: Deutschland, Berlin
Posts: 3017
Ich habe in dem Thread von "Solaris" in "Shell Scripting ..." denn dies ist keine Frage im Zusammenhang Solaris.

Greets,
DN2
  #4 (permalink)  
Old 04-25-2008
Ariean Ariean is offline
Registrierte Nutzer
  
 

Join Date: Apr 2008
Beiträge: 25
Vielen Dank für Ihre Antwort, die auf Ihre Anregung habe ich den Code als Neuschreiben unter, aber einige, wie ich nicht verstehen, warum es der Ausführung der Anweisung im ELSE-Teil auch nach dem Zustand, in die if-Anweisung ist wahr, oder zufrieden oder pmcmd Befehl erhalten ausgeführt. Könnten Sie bitte etwas Licht werfen. Danke.

\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d

#! / bin / ksh
für die Datei in / export / home / orainfodev / sam s; tun
if test-f $ file / invoke.txt, dann
pmcmd startworkflow-u Administrator-p SADMIN-s odsdbq1: 4001-F IR_Custom WF_Test_Mapping
sonst
echo "$ 0: $ file / invoke.txt: nicht gefunden"> & 2
# echo "Konnte nicht in der Lage, die Datei finden, können nicht ausgeführt werden Workflow Dank!"
fi
getan

\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d
  #5 (permalink)  
Old 04-25-2008
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
Shell-Programmierer, Autor
  
 

Join Date: März 2007
Ort: Toronto, Kanada
Posts: 2380
Zitat:
Zitat von Ariean View Post
Vielen Dank für Ihre Antwort, die auf Ihre Anregung habe ich den Code als Neuschreiben unter, aber einige, wie ich nicht verstehen, warum es der Ausführung der Anweisung im ELSE-Teil auch nach dem Zustand, in die if-Anweisung ist wahr, oder zufrieden oder pmcmd Befehl erhalten ausgeführt. Könnten Sie bitte etwas Licht werfen. Danke.

\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d

#! / bin / ksh
für die Datei in / export / home / orainfodev / sam s; tun

Haben Sie wirklich die Absicht, Schleife über zwei Dateien, "/ export / home / orainfodev / SAM" und "s"?

Wenn dem so ist, die zu einer einzigen Datei, muss sie in Anführungszeichen gesetzt werden. Und wenn ja, warum sind Sie mit einer Schleife?

Closed Thread

Lesezeichen

Tags
Unix-Befehle

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 05:48 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