Beliebte Beiträge Auf Dem Pc Und Software

Top Artikel Auf Internet - 2018

Ashe - Linux Befehl

sh - Kommandointerpreter (shell)

SYNOPSIS

sh [- / + aCefnuvxIimqsVEbc ] [- o longname ] -words [ target ... ]

BESCHREIBUNG

Sh ist der Standard-Kommandointerpreter für das System. Die aktuelle Version von sh wird gerade geändert, um den Spezifikationen POSIX 1003.2 und 1003.2a für die Shell zu entsprechen. Diese Version hat viele Eigenschaften, die sie in einigen Punkten der Korn-Shell ähnlich erscheinen lassen, aber es ist kein Korn-Shell-Klon (siehe ksh (1)). Nur die mit POSIX gekennzeichneten Funktionen und einige Berkeley-Erweiterungen werden in diese Shell integriert. Wir erwarten eine POSIX Konformität zu dem Zeitpunkt, zu dem 4.4 BSD freigegeben wird. Diese Manpage ist kein Tutorial oder eine vollständige Spezifikation der Shell.

Übersicht

Die Shell ist ein Befehl, der Zeilen aus einer Datei oder dem Terminal liest, interpretiert und allgemein andere Befehle ausführt. Es ist das Programm, das ausgeführt wird, wenn sich ein Benutzer beim System anmeldet (obwohl ein Benutzer mit dem Befehl chsh (1) eine andere Shell auswählen kann). Die Shell implementiert eine Sprache mit Flusssteuerungskonstrukten, einer Makrofunktion, die neben der Datenspeicherung eine Vielzahl von Funktionen bietet, sowie integrierten Funktionen für Verlauf und Zeilenbearbeitung. Es enthält viele Funktionen zur interaktiven Nutzung und hat den Vorteil, dass die interpretative Sprache sowohl für die interaktive als auch für die nicht-interaktive Verwendung (Shell-Skripte) verwendet werden kann. Das heißt, Befehle können direkt in die laufende Shell geschrieben oder in eine Datei geschrieben werden, und die Datei kann direkt von der Shell ausgeführt werden.

Aufruf

Wenn keine Argumente vorhanden sind und wenn die Standardeingabe der Shell an ein Terminal angeschlossen ist (oder wenn das Flag - i gesetzt ist) und - c < Die Option ist nicht vorhanden, die Shell wird als interaktive Shell betrachtet. Eine interaktive Shell fordert im Allgemeinen vor jedem Befehl auf und behandelt Programmier- und Befehlsfehler anders (wie unten beschrieben). Beim ersten Start prüft die Shell Argument 0, und wenn sie mit einem Bindestrich "-" beginnt, wird die Shell auch als Login-Shell betrachtet. Dies geschieht normalerweise automatisch durch das System, wenn sich der Benutzer zum ersten Mal anmeldet. Eine Login-Shell liest zuerst Befehle aus den Dateien / etc / profile und .profile, falls sie existieren. Wenn die Umgebungsvariable ENV beim Zugriff auf eine Shell gesetzt oder in der .profile einer Login-Shell gesetzt ist, liest die Shell als nächstes Befehle aus der Datei ENV . ein Benutzer sollte Befehle, die nur zum Zeitpunkt der Anmeldung ausgeführt werden sollen, in der Datei .profile ablegen, und Befehle, die für jede Shell innerhalb der Datei ENV ausgeführt werden. Um die Variable ENV auf eine Datei zu setzen, platzieren Sie die folgende Zeile in Ihrem .profile Ihres Home-Verzeichnisses

ENV = $ HOME / .shinit; export ENV

ersetzt durch `` shinit '' einen beliebigen Dateinamen. Da die Datei ENV für jeden Aufruf der Shell gelesen wird, einschließlich Shell-Skripten und nicht interaktiven Shells, ist das folgende Paradigma nützlich, um Befehle in der ENV -Datei auf interaktive Aufrufe zu beschränken. Platziere die Befehle in "case" und "esac" unten (diese Befehle werden später beschrieben):

case $ - in * i *)

# Befehle nur zur interaktiven Verwendung

...

esac

Wenn Befehlszeilenargumente neben den Optionen angegeben wurden, behandelt die Shell das erste Argument als den Namen einer Datei, aus der Befehle gelesen werden sollen (ein Shell-Skript), und die übrigen Argumente werden als Positionsparameter der Shell ($ 1, $ 2, etc). Andernfalls liest die Shell Befehle von ihrer Standardeingabe.

Bearbeitung der Argumentliste

Alle Optionen mit einem Buchstaben haben einen entsprechenden Namen, der als Argument für die Option - o verwendet werden kann. Der Name set - o wird neben der Option für einen einzelnen Buchstaben in der folgenden Beschreibung angegeben. Wenn Sie einen Strich `` - '' angeben, wird die Option aktiviert, während ein Pluszeichen `+ 'die Option deaktiviert. Die folgenden Optionen können über die Befehlszeile oder mit dem eingebauten set (1) (später beschrieben) eingestellt werden.

-a allexport

Exportiert alle zugewiesenen Variablen. (UNIMPLEMENTED für 4.4alpha)

Senden Sie Ihren Kommentar