Im Oozie Shell Aktion habe ich versucht, direkt mkdir
den Befehl zu verwenden, es funktionierte. Aber wenn ich andere Befehle wie exec
versuchte. Es gibt einen Fehler `` Befehl nicht gefunden`. WarumOozie Shell Aktion> warum nur einige Shell-Befehl erlauben, aber nicht alle
0
A
Antwort
0
$ die exec
/usr/bin/die: kein exec in (/ sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin /)
$ man bash
... SHELL BUILTIN BEFEHLE
... exec [-cl] [-a name] [Befehl [Argumente]]
Duh! exec
ist keine ausführbare Linux-Datei, die Sie im PATH finden können. es ist ein Shell integrierten Befehl - wie unset
oder alias
oder if .. then .. else .. fi
Aber Sie können eine Shell starten nur exec
heißt
bash -c "echo 'IN SUB-PROCESS' ; exec echo 'this is really a complicated way to run ECHO and terminate' ; echo 'NOT EXECUTED, EXEC TERMINATED THE SUB-PROCESS'"
Verwandte Themen
- 1. Regex erlauben nur Buchstaben und einige Zeichen
- 2. Regex - erfordern einige Zeichen und erlauben nur einige zusätzliche?
- 3. tmux einige, aber nicht alle Fenster synchronisieren
- 4. CSS alle auswählen, einige, aber nicht alle Elemente auswählen?
- 5. Den Benutzern erlauben, einige Informationen nur auf Ruby on Rails, aber nicht Admins zu bearbeiten
- 6. Oozie-Shell-Aktion wird nicht ausgeführt, wenn Benutzer gesendet wird
- 7. Running Shell-Skript von Oozie über Hue
- 8. Run Schwein in Oozie Shell Aktion
- 9. Erlauben Sie nur einige Dateien in Unterordner mit .gitignore
- 10. Regex nur erlauben alphanumerische
- 11. Shell-Skript-Aufruf fehlgeschlagen von Oozie
- 12. OOzie Shell -Impala-Aktion XML-Fehler
- 13. Kann sinon stub mitArgs einige aber nicht alle Argumente übereinstimmen
- 14. Warum erlauben Browser CSRF?
- 15. aber nicht alle Felder in Textdatei (Shell/bash)
- 16. nur alphanumerische erlauben Werte
- 17. ctype_alpha aber erlauben Leerzeichen (php)
- 18. ImageMagick Policy Interpretationsreihenfolge: alle Coder deaktivieren, erlauben nur eine
- 19. Warum benennt Rails nur einige meiner Routen?
- 20. Warum gplant einige Punkte nicht?
- 21. Oozie startet nicht
- 22. Warum alle Funktionen der objektorientierten Sprache erlauben, nur einen Wert zurückzugeben (Allgemein)
- 23. Warum "alle?" hat '?' wo als "einige" nicht "?" in Clojure?
- 24. erlauben, nur einen Radiobutton auszuwählen
- 25. OOM mit CRON aber nicht mit SHELL
- 26. HiveContext funktioniert nicht von Oozie
- 27. Oozie Workflow: Hive-Tabelle nicht gefunden, aber es existiert
- 28. bekommen django.apps von Shell, aber nicht Skript
- 29. erlauben Ziffern nur für Eingänge
- 30. erlauben nur ein bestimmtes Kind
Vielen Dank viel für Ihre kompakte Erklärung laufen. Genau das möchte ich wissen. Aber ich würde gerne wissen, warum Exec immer noch aufgerufen werden kann, obwohl es keine ausführbare Linux-Datei ist? Ist eingebettet ist die Shell-Binärdatei? – Rui
Die Shell führt einen Parser auf die Befehle, die Sie eingeben, dann filtert die * eingebaut * Befehle für die interne Verarbeitung und für den Rest versucht es eine passende ausführbare Datei zu finden. Das ist "eingebaut". Und mit 'csh' Shell hätten Sie übrigens sehr unterschiedliche Einbauten mit unterschiedlicher Syntax. –