[
Argument
...]
Das Shellkommando : hat keinen direkten Effekt. Im Gegensatz zum Kommentar werden aber die ``Argumente'' wie bei normalen Kommandos erweitert. Selbstverständlich muß das :- Shellkommando an einer für Kommandos zulässigen Position in der Kommandozeile stehen.
Seine Bedeutung hat dieses Kommando in Shellscripts, wo bestimmte
Parametererweiterungen, beispielsweise Belegung von Shellvariablen
mit Default-Werten (-> Seite ), unabhängig von
einem einzelnen Kommando ausgeführt werden sollen.
[
Name [
= Kommando]
...]
Mit dem alias-Shellkommando können einfache Kommandos mit benutzerdefinierten Namen (Synonymen) belegt werden. Wenn ein Name und ein einfaches Kommando angegeben sind, wird der Name als Synonym für das Kommando gespeichert. Besteht das Kommando aus mehreren Wörtern, muß es in Hochkommata oder Anführungszeichen eingeschlossen werden.
Ohne Argument werden alle Synonyme aufgelistet. Wenn nur ein Name angegeben ist, wird das Synonym für diesen Namen angezeigt. Der Rückgabewert von alias ist Null (wahr), wenn der Name als Synonym für ein Kommando steht.
[
Jobspezifikation]
Das Kommando bg startet einen (mit ^
Z) angehaltenen
Prozeß (Job) im Hintergrund. Wenn keine Jobspezifikation (-> Seite
) angegeben wurde, wird der zuletzt angehaltene Job
gestartet.
Ein im Hintergrund laufender Job wird automatisch angehalten, wenn er vom Terminal lesen will.
Syntax:
bind [
- m Keymap]
[
- ldv]
[
- q Kommandobezeichnung]
bind [
- m Keymap]
[
- f Dateiname]
\
bind [
- m Keymap]
[
Tastenfolge: Kommandobezeichnung]
Mit dem bind-Shellkommando kann die Tastenbelegung der readline- Editorfunktionen angezeigt oder neu definiert werden.
Die readline-Funktionen unterstützen mehrere Editoremulationen. Dazu werden mehrere Keymaps verwaltet.
Die Syntax einer Tastaturbelegung entspricht der für die `
~
/.inputrc'-Datei (-> Seite ).
Die Optionen haben die folgende Bedeutung:
Das break-Shellkommando bricht eine for-, while- oder until-Schleife ab. Wenn eine Zahl n als Argument angegeben ist, werden n verschachtelte Schleifen abgebrochen. Ist die Anzahl größer als die Zahl der umgebenden Schleifen, werden alle umgebenden Schleifen verlassen.
[
Argument ...]
Das Shellkommando builtin führt ein anderes eingebautes Shellkommando aus, auch wenn es durch ein Synonym oder eine gleichnamige Scriptfunktion verdeckt ist. Eine mit ` enable -n' abgeschaltete Shellfunktion kann auch mit dem builtin-Kommando nicht aufgerufen werden.
Wird seit Version 1.14 nicht mehr unterstützt. Siehe exit auf
Seite .
[
Verzeichnis]
Das Shellkommando cd setzt das aktuelle Verzeichnis. Wenn kein Verzeichnis angegeben ist, wird in das HOME- Verzeichnis gewechselt. In der Shellvariablen CDPATH kann eine Liste von (durch Doppelpunkt getrennten) Verzeichnissen angegeben werden, in denen das Verzeichnis gesucht wird. Ein Verzeichnisname, der mit einem `/' beginnt, wird als absoluter Name behandelt und nur vom Wurzelverzeichnis aus gesucht.
Das aktuelle Verzeichnis selbst ist unter der Bezeichnung `.' ansprechbar; das im Verzeichnisbaum nächsttiefere Verzeichnis heißt `..' und das letzte aktuelle Verzeichnis ( OLDPWD) heißt `-'.
[
-pVv]
Kommando [
Argument...]
Das Shellkommando command führt das angegebene (einfache) Kommando ohne die normale shellinterne Identifizierung aus. Dadurch werden nur die fest eingebauten Shellfunktionen und die Dateien aus den Verzeichnissen in PATH ausgeführt.
[
n]
Mit der Shellfunktion continue wird der aktuelle Schleifendurchlauf einer for-, while- oder until- Schleife sofort unterbrochen und mit dem nächsten Schleifendurchlauf angefangen. Wenn als Argument eine Zahl (größer als Null) angegeben ist, wird diese Anzahl umgebender Schleifen abgebrochen. Wenn die Zahl größer als die Zahl der umgebenden Schleifen ist, werden alle umgebenden Schleifen unterbrochen und mit dem nächsten Durchlauf der äußersten Schleife fortgefahren.
[
- frxi]
[
Name [
= Wert]
]
Das Shellkommando declare erzeugt eine Shellvariable und/oder setzt die Attribute der Variablen. Wenn kein Name angegeben ist, werden die Werte aller Variablen angezeigt.
Das Kommando erlaubt folgende Optionen:
Wenn die Shellfunktion innerhalb einer Funktionsdefinition benutzt wird, ist die Variable lokal zu dieser Funktion, genauso als ob sie mit der Shellfunktion local definiert wäre.
Die typeset-Shellfunktion ist identisch mit der declare- Shellfunktion.
[
- l]
Die dirs-Shellfunktion gibt eine Liste der im Verzeichnisstapel
gespeicherten Verzeichnisse aus. Die Bearbeitung dieses
Verzeichnisstapels findet mit den Shellkommandos pushd und
popd statt (-> Seite ).
Mit der Option ` -l' werden die Verzeichnisnamen nicht relativ zum Heimatverzeichnis, sondern vom Wurzelverzeichnis aus angezeigt.
[
- neE]
[
Argument ...]
Das echo-Shellkommando gibt die Argumente (durch Leerzeichen getrennt) auf die Standardausgabe. Es gibt auch ein externes echo-Kommando, das mit dem eingebauten Shellkommando der bash identisch ist.
Wenn die Option ` -n' gesetzt ist, wird die Ausgabe nicht durch ein Zeilenendezeichen abgeschlossen.
Wenn die Option ` -e' gesetzt ist, werden die folgenden Sonderzeichen zur Formatierung der Ausgabe erkannt:
\
a
\
b
\
c
\
f
\
n
\
r
\
t
\
v
\\
\
'
\
nnn
[
- n]
[
- all]
[
Kommando ...]
Das Shellkommando enable ermöglicht es, Shellfunktionen ab- und wieder anzuschalten. Auf diese Weise kann anstelle eines (internen) Shellkommandos das gleichnamige (externe) Kommando aus einem Binärverzeichnis ausgeführt werden.
Wenn die Option ` -n' gesetzt ist, wird das Shellkommando abgeschaltet. Sonst wird das Shellkommando eingeschaltet.
Mit der Option ` -all' werden alle eingebauten Shellkommandos aktiviert und eine Liste ausgegeben.
[
Argument
...]
Das eval-Shellkommando fügt die Argumente zu einer Kommandozeile zusammen, die ausgeführt wird, ohne die Shell zu verdrängen. Sinn dieses Shellkommandos ist es, eine Kommandozeile mehrfach der Parametererweiterung zu unterziehen.
Wenn in einem Shellscript Variablen eingesetzt werden müssen, die ihrerseits wieder Variable enthalten, oder wenn aufgrund der Reihenfolge ihrer Ausführung die gewünschte Erweiterung nicht erzielt wird, ist dieses Shellkommando das Mittel der Wahl.
[
[
-]
Kommando [
Argument
...]
]
Normalerweise startet die Shell ein Programm mit dem fork-Systemaufruf und wartet im Hintergrund, bis das Programm beendet wird. Danach übernimmt die Shell wieder die Kontrolle über das Terminal.
Das Shellkommando exec führt ein Kommando mit den angegebenen Argumenten aus, ohne einen Kindprozeß zu erzeugen. Das heißt, die aufrufende Shell wird verdrängt und damit beendet. Auch wenn das Kommando aus irgendwelchen Gründen nicht ausgeführt werden kann, wird die Shell beendet (wenn die Shellvariable no_exit_on_failed_exec nicht gesetzt ist).
Die Argumente werden als Optionen und Positionsparameter an das Kommando weitergegeben. Wenn das erste Argument ein `-' ist, wird dieses Argument als nulltes (!) Argument der Kommandozeile an das Kommando weitergegeben. Das ist die Art, wie login ein Programm aufruft.
Wenn kein Kommandoname angegeben ist, werden die Ein-/Ausgabe-Umleitungen, die mit dem exec-Shellkommando gegeben werden, auf die aufrufende Shell angewendet.
[
n]
Das exit-Shellkommando verläßt die Shell mit dem Status n. Wenn kein Status angegeben ist, wird der Status des zuletzt ausgeführten Kommandos (in der Shellvariablen ` ?') zurückgegeben.
Die exit-Shellfunktion erzeugt ein EXIT-Signal (0), das mit dem trap-Shellkommando abgefangen und als letzte Aktion der Shell behandelt werden kann.
Bis zur Version 1.13 konnte die Shellfunktion exit auch unter dem Namen bye aufgerufen werden.
[
- nfp]
[
Name [
=
Wert]
]
Bei der Ausführung von Programmen durch die Shell werden in der Regel
neue Prozesse erzeugt. Diese Prozesse ``erben'' von der Shell eine Umgebung
(Environment), in der
verschiedene ``globale'' Variablen und Funktionen enthalten sein
können (-> Seite ). Diese können vom Prozeß
ausgewertet werden.
Es werden aber nicht alle Shellvariablen, sondern nur die besonders für den Export bestimmten Umgebungsvariablen und Funktionen aus der Shellumgebung in die Umgebung eines neuen Prozesses kopiert.
Das export-Shellkommando schreibt bereits existierende Shellvariable in die Prozeßumgebung und macht sie so zu Umgebungsvariablen. Wenn die Option ` -n' gesetzt ist, wird die Variable aus der Prozeßumgebung entfernt, innerhalb der Shell bleibt sie als Shellvariable erhalten. Um Funktionen zu exportieren, muß die ` -f'-Option benutzt werden.
Wenn keine Namen angegeben sind oder die Option ` -p' gesetzt
ist, werden alle für den Export bestimmten Shellvariablen mit ihren Werten
angezeigt.
Eine komplette Liste aller Umgebungsvariablen
können Sie sich auch mit dem printenv-Kommando (-> Seite
)
anzeigen lassen. In dieser Liste werden auch die Variablen angezeigt,
die die Shell beim Start mit ihrer eigenen Umgebung erhalten hat.
Wenn zu einem Variablennamen beim Aufruf von export eine Zuweisung erfolgt, wird eine existierende Variable mit diesem Wert belegt oder eine neue mit diesem Wert erzeugt.
Die mit Magnetbandgeräten arbeitenden Kommandos versuchen beispielsweise die Gerätedatei des Streamers aus der Umgebungsvariablen TAPE zu lesen. Wenn Sie beispielsweise einen (den ersten) SCSI-Streamer als Standardgerät für alle Bandoperationen bestimmen wollen, können Sie mit dem folgenden Kommando die Umgebungsvariable erzeugen:
$ export TAPE=/dev/st0 $ _
[
-e Editor]
[
- nlr]
[
Anfang]
[
Ende]
fc - s [
Muster= Ersatz]
\
[
Kommandozeile]
Mit dem Shellkommando fc (fix command) können einzelne Kommandozeilen aus dem Kommandozeilenspeicher, aber auch ganze Bereiche des Kommandozeilenspeichers editiert und danach ausgeführt werden. Als Editor wird der mit der ` -e'-Option spezifizierte Editor benutzt oder der in der Shellvariablen FCEDIT bestimmte oder schließlich der Standardeditor vi, wenn kein anderer Editor bestimmt wird.
In der ersten Form werden die Kommandozeilen von Anfang bis Ende in den Editor geladen. Anfang und Ende können als Zeichenkette (in Übereinstimmung mit dem Anfang der gewünschten Kommandozeile) oder als Zahl (die absolute Position des Kommandos im Kommandozeilenspeicher) angegeben werden. Eine negative Zahl bestimmt Anfang und Ende relativ zum aktuellen Kommando.
Wenn kein Ende gesetzt ist, wird nur das Kommando am Anfang editiert. Wenn auch kein Anfang gesetzt ist, wird das letzte Kommando genommen.
Wenn die Option ` -l' gesetzt ist, wird der entsprechende Bereich von Kommandozeilen angezeigt, anstatt ihn zu editieren. Wenn zusätzlich noch die Option ` -n' gesetzt ist, wird die Ausgabe der Zeilennummern vor den Kommandozeilen unterdrückt.
Wenn die Option ` -r' gesetzt ist, werden die Kommandozeilen in umgekehrter Reihenfolge in den Editor geladen.
Wenn das Shellkommando fc in der zweiten Form aufgerufen wird, ersetzt es das Muster in der Kommandozeile durch Ersatz. Wenn kein Muster/Ersatz-Paar angegeben wird, kommt die Kommandozeile unverändert zur Ausführung.
[
Jobspezifikation ]
Das Shellkommando fg bringt einen (mit ^
Z) angehaltenen
Prozeß im Vordergrund zum Laufen. Wenn keine Jobspezifikation (->
Seite ) angegeben ist, wird der zuletzt angehaltene
Job im Vordergrund gestartet.
[
Argumente]
Die getopts-Shellfunktion kann in Shellscripten verwendet werden, um die Kommandozeile nach (konventionell) gültigen Optionen und Argumenten zu durchsuchen.
Wenn ein Shellscript als Kommando aufgerufen wird, kann es auf der
Kommandozeile Optionen und Argumente übernehmen. Diese Parameter sind
in den Positionsparametern (-> Seite ) gespeichert und
können so innerhalb des Scripts angesprochen und z. B. mit
einer case-Konstruktion verarbeitet werden.
Wenn die Kommandozeile den konventionellen Regeln entsprechend
aufgebaut ist, kann sie einfacher mit der getopts-Shellfunktion
auseinander genommen werden (-> Seite ).
In der Zeichenkette Optionen werden alle Schalter und Regler mit ihren Kennbuchstaben angegeben. Regler, die zusätzliche Argumente erhalten, werden von einem Doppelpunkt gefolgt.
Immer dann, wenn getopts aufgerufen wird, gibt es eine Option in der beim Aufruf bezeichneten Variable zurück. Wenn diese Variable nicht existiert, wird sie erzeugt. Wenn die Option ein Argument erwartet (also mit einem Doppelpunkt markiert ist), wird dieses Argument in der Shellvariablen OPTARG zurückgegeben.
Bei jedem Aufruf von getopts wird der Zeiger in der Shellvariablen OPTIND erhöht, damit bei einem weiteren Aufruf automatisch die nächste Option eingelesen wird.
Der OPTIND wird beim Start der Shell mit 1 initialisiert. Wenn eine Kommandozeile mehrfach eingelesen werden soll, muß der Index manuell zurückgesetzt werden.
Wenn nicht ausdrücklich eine Argument-Zeichenkette beim Aufruf von getopts übergeben wird, nimmt das Shellkommando die Positionsparameter, also die Argumente von der Kommandozeile des Scripts.
Der Status von getopts ist 0 (wahr), wenn eine Option gefunden wurde und falsch, wenn das Ende der Kommandozeile bzw. der Argumente erreicht ist oder wenn ein Fehler aufgetreten ist.
Die Ausgabe von Fehlermeldungen in den Fehlerkanal kann durch Plazieren eines Doppelpunktes als erstes Zeichen der Optionen-Zeichenkette oder durch Belegung der Shellvariablen OPTERR=0 unterdrückt werden.
Zur weiteren Fehlerbehandlung kann bei der ``stillen'' Variante in der Variablen ein symbolischer Fehlercode und in der Shellvariablen OPTARG das zuletzt gelesene Token gefunden werden.
[
- r]
[
Name]
Die Shell unterhält eine Hashtabelle, in der alle seit dem Start der Shell aufgerufenen (externen) Kommandos mit komplettem Pfadnamen gespeichert werden. Das beschleunigt jeden weiteren Aufruf eines solchen Kommandos, weil nicht erst auf dem Pfad danach gesucht werden muß. Wenn das Shellkommando hash mit einem Kommandonamen aufgerufen wird, fügt es diesen Namen (mit Pfad) in die Hashtabelle ein.
Wenn die Option ` -r' gesetzt ist, wird die Hashtabelle gelöscht. Diese Option kann notwendig sein, wenn eine Binärdatei gelöscht oder verschoben worden ist. Wenn kein Argument angegeben ist, wird der Inhalt der Hashtabelle ausgegeben.
[
Shellkommando
]
Das help-Shellkommando zeigt einen kurzen Hilfstext zu dem angegebenen Shellkommando oder, wenn kein Kommando angegeben ist, eine Übersicht aller Shellkommandos, zu denen Hilfstexte verfügbar sind.
[
n]
[
- anrw]
[
Datei]
Wenn die history-Shellfunktion in der ersten Form aufgerufen wird, zeigt sie die Einträge im Kommandozeilenspeicher an. Das Argument n schränkt die Ausgabe auf die letzten n Zeilen ein.
In der zweiten Form wird der Kommandozeilenspeicher mit der Option
` -r' aus der Datei gelesen oder mit der Option `
-w' dorthin geschrieben. Mit der Option ` -a' werden die
gespeicherten Zeilen an den Kommandozeilenspeicher angehängt, und mit
der Option ` -n' werden die noch nicht gelesenen Zeilen aus der
Datei gelesen. Wenn kein Dateiname angegeben ist, wird der Dateiname
aus der Shellvariablen HISTFILE genommen, die mit
~
/.bash_history vorbelegt ist.
[
- lnp]
[
Jobspezifikation]
[
Argument ... ]
Das Shellkommando jobs gibt eine Liste der aktuellen Jobs aus.
In dieser Liste steht neben der Jobnummer zu jedem Job der
Kommandoname, der Status und eine Markierung `+' für den `aktuellen
Job' und `-' für den vorhergehenden aktuellen Job (-> Seite
).
Wenn die Option ` -l' gesetzt ist, wird zusätzlich die Prozeßnummer zu jedem Job ausgegeben. Mit der Option ` -p' wird nur die Prozeßnummer ausgegeben. Mit der Option ` -n' werden nur die Jobs angezeigt, die ihren Status seit der letzten Anzeige geändert haben. Wenn eine Jobspezifikation angegeben ist, werden nur die Daten zu diesem Job angezeigt.
Mit der Option ` -x' kann das Kommando ausgeführt werden, indem alle in den Argumenten auftauchenden Jobspezifikationen durch ihre Prozeßnummern ersetzt werden.
[
Prozeßnummer |
Jobspezifikation]
Das Shellkommando kill sendet das Signal an den Prozeß
Prozeßnummer. Standardwert ist SIGTERM (15) zum
Terminieren des Prozesses. Es können aber auch
beliebige andere Signale gesendet werden. Das Signal kann als Name
oder als Nummer angegeben werden. Die Jobspezifikation ist auf Seite
erklärt.
Mit der Option ` -l' werden alle möglichen Signalnamen aufgelistet.
Es gibt auch ein externes kill-Kommando, mit dem die gleichen Signale gesendet werden können, das aber nicht mit einer Jobspezifikation in der Kommandozeile umgehen kann.
[
Ausdruck ...]
Das Shellkommando let berechnet jedes Argument als arithmetischen Ausdruck. Der Rückgabewert von let ist 1, wenn der letzte Ausdruck Null liefert; sonst ist der Status Null.
Die Syntax der Ausdrücke ist auf Seite erklärt.
[
Name[
=
Wert]
]
Das Shellkommando local erzeugt eine lokale Variable Name und weist ihr den Wert zu. Wenn eine lokale Variable innerhalb einer Funktion erzeugt wird, so ist sie nur innerhalb dieser Funktion und allen Unterfunktionen zugänglich. Außerhalb von Funktionen hat die Shellfunktion local keine Bedeutung.
Wenn kein Name angegeben ist, werden alle lokalen Variablen angezeigt.
Das Shellkommando logout beendet eine Loginshell. Wenn die Shell als
bash gestartet wurde, wird dabei das
Shellscript ` ~
/.bash_logout' abgearbeitet.
[
+|- n]
Das popd-Shellkommando löscht einen Verzeichnisnamen vom Verzeichnisstapel. Ohne Argument wird das erste (oberste) Verzeichnis vom Stapel geholt und mit cd ein Verzeichniswechsel dorthin ausgeführt.
Mit der Option `+/- n' kann ein bestimmtes Verzeichnis aus dem Stapel gelöscht werden. Dabei ist die Zahl n die Position im Stapel, beginnend mit Null, und das Vorzeichen gibt an, ob das Verzeichnis vom ``Anfang'' (links in der Liste von dirs, mit `+') oder vom ``Ende'' (`-') aus gezählt werden soll.
Wenn die Shellvariable pushd_silent gesetzt ist, wird die Auflistung des aktualisierten Verzeichnisstapels (mit dirs) unterdrückt.
Das Shellkommando pushd legt das Verzeichnis als oberstes auf dem Verzeichnisstapel ab oder rotiert den Verzeichnisstapel um die angegeben Positionen.
Die Bedeutung der Shellvariablen pushd_silent ist die gleiche wie beim popd-Shellkommando.
Das Shellkommando pwd gibt den Pfadnamen des aktuellen Verzeichnisses aus.
[
- r]
[
Name ...]
Die Shellfunktion read liest eine Zeile von der Standardeingabe und weist die (durch die IFS getrennten) Wörter den benannten Shellvariablen zu. Wenn mehr Wörter in der Zeile stehen als Namen angegeben sind, werden die verbleibenden Wörter alle in der zuletzt benannten Variablen gespeichert.
Wenn die Option ` -r' gesetzt ist, wird ein durch ein `\
'
eingeleitetes Zeilenende als Teil der Eingabe in einer Variablen abgespeichert.
Wenn kein Name für die Variable angegeben ist, unter dem die Eingabe gespeichert werden soll, so wird automatisch die Shellvariable REPLY (Antwort) benutzt.
[
- npf ]
[
Name]
Die Shellfunktion readonly gibt Variablen (oder Scriptfunktionen mit der Option ` -f') den ``nur Lesen''-Status. Solche Variable können nicht gelöscht oder verändert werden.
Wenn kein Name angegeben ist oder die Option ` -p' gesetzt ist, werden alle Variablen mit ``nur Lesen''-Status angezeigt.
Mit der ` -n'-Option können bis zur Version 1.14.2 Variable mit ``nur Lesen''-Status wieder beschreibbar gemacht werden. Die einzige Ausnahme sind die reale und die effektive User-ID, die nicht direkt verändert werden können.
[
n]
Die return-Shellfunktion hat nur innerhalb einer Scriptfunktion eine Bedeutung und veranlaßt dort, die Funktion mit dem angegebenen Rückgabewert zu verlassen.
Wenn kein Rückgabewert angegeben ist, wird der Status des zuletzt ausgeführten Kommandos weitergereicht.
[
- abefhknotuvxldHC]
[
Argument]
~
/.bashrc interpretiert
Wenn anstelle des `-' bei den Optionen ein `+' gesetzt ist, wird die entsprechende Option abgeschaltet. Alle hier aufgeführten Optionen können auch beim Aufruf der Shell in der Kommandozeile gesetzt werden. Die aktuell gesetzten Optionen können mit der Shellvariablen `-' angezeigt werden ( echo$-).
Wenn keine Optionen angegeben sind, werden alle Shellvariablen mit ihren Werten angezeigt.
[
n]
Die shift-Shellfunktion verschiebt (shiftet) die Positionsparameter um n Stellen nach links. Die herausgeschobenen Parameter sind verloren. Wenn keine Anzahl angegeben ist, wird um eine Stelle geshiftet.
Die source-Shellfunktion läßt die Shell das Shellscript Datei abarbeiten. Dabei wird kein neuer Shell-Prozeß gestartet, sondern der Inhalt der Scriptdatei in den Eingabekanal der aktuellen Shell eingespeist. Diese Funktion kann auch durch einen einzelnen Punkt am Anfang der Kommandozeile ausgelöst werden.
[
- f ]
Die suspend-Shellfunktion veranlaßt die Shell, auf das Signal SIGCONT zu warten. Wenn die Option ` -f' gesetzt ist, kann auch eine Loginshell mit dieser Funktion angehalten werden.
[ Ausdruck ]
Die Shellfunktion test bewertet den Ausdruck und liefert Null, wenn der
Ausdruck wahr (!) ist und Eins, wenn er falsch ist. Dieser Unterschied zu der
gängigen Definition der Wahrheitswerte in C ist für die Shellprogrammierung
normal! (Siehe auch im Abschnitt über den Status der Kommandos auf
Seite )
Ein Ausdruck kann einen einstelligen (unären) oder einen zweistelligen (binären) Operator enthalten. Einstellige Operatoren benötigen ein einziges Argument, zweistellige Operatoren stehen zwischen zwei Argumenten. Unäre Operatoren dienen oft zum Ermitteln des Zustandes einer Datei.
Außerdem können mehrere Ausdrücke noch durch spezielle Operatoren verknüpft werden.
Folgende Operationen können ausgeführt werden:
Das Shellkommando times gibt die verbrauchte Benutzer- und Systemzeit jeweils für die Shell und für die von der Shell aus gestarteten Prozesse an.
[
Kommando]
[
Signal]
Die Shellfunktion trap fängt das angegebene Signal ab und führt das Kommando aus. Wenn kein Signal benannt ist, werden alle Signale zurückgesetzt. Wenn als Kommando die leere Zeichenkette angegeben ist, wird das damit angegebene Signal von der Shell und von allen Kommandos, die von dieser Shell ausgeführt werden, ignoriert.
Das Signal kann entweder als Zahl oder mit seinem Namen angegeben werden. Eine Liste aller möglichen Signale kann vom Shellkommando trap mit der Option ` -l' ausgegeben werden.
Wenn das Signal EXIT (0) angegeben ist, wird das Kommando als letztes vor der Beendigung der Shell ausgeführt.
Wenn keine Argumente angegeben sind, wird eine Liste aller ``getrapten'' Signale und der damit verbundenen Kommandos ausgegeben.
[
- atp]
\
[
- all]
[
- type | - path]
[
Name]
Die Shellfunktion type gibt an, wie der angegebene Name von der Shell interpretiert würde, wenn er in der Kommandozeile an der Position eines Kommandos stünde (alias, Scriptfunktion, Shellfunktion (builtin), Datei). Wenn der Name nicht gefunden wird, gibt type nichts aus.
Mit der Option - type wird nur ein Wort für den Kommandotyp entsprechend den oben genannten Möglichkeiten ausgegeben.
Wenn die Option - path benutzt wird, gibt die Shellfunktion den kompletten Pfadnamen des benannten Kommandos aus. Wenn es kein externes Kommando mit dem Namen gibt, wird nichts ausgegeben.
Die Option - all veranlaßt die Shellfunktion nicht nur die erste Fundstelle eines passenden Kommandos anzuzeigen, sondern alle möglichen. Mit der Option - path kann dabei zusätzlich die Ausgabe auf externe Kommandos eingeschränkt werden.
[
- SHacdfmnpstuv
[
Limit]
]
Die Shellfunktion ulimit erlaubt die Kontrolle über die von der Shell und den daraus gestarteten Programmen benutzten Systemressourcen.
[
-S]
[
Modus]
Die Shellfunktion umask setzt die Maske, mit der die
Zugriffsrechte auf Dateien und Verzeichnisse unmittelbar nach ihrer
Erzeugung durch einen von dieser Shell kontrollierten
Prozeß bestimmt
werden. Die in der Maske gesetzten Bits werden bei den Zugriffsrechten
für eine neue Datei (oder ein neues Verzeichnis) gelöscht (sie werden
maskiert).
Die Maske kann als Oktalzahl oder in der beim Kommando chmod auf
Seite angegebenen Form angegeben werden. Wenn kein
Wert angegeben ist, wird die aktuelle Maske angezeigt. Wenn die
Option ` -S' gesetzt ist, wird die aktuelle Maske in symbolischer
Form ausgegeben.
Die Maske ` 022' verbietet beispielsweise allen Benutzern, außer dem Eigentümer selbst, das Schreiben in eine neu angelegte Datei oder ein Verzeichnis.
Bei der Erzeugung einer Datei wird die Funktion creat(2) mit einem Wert für die Permissions aufgerufen, beispielsweise 0777. Durch die umask werden die Schreibrechte für Gruppe und Andere gelöscht. Die übrigen Rechte kommen unverändert durch die Maske und erscheinen in der I-Node der frisch erzeugten Datei.
[
-a]
[
Name
...]
Die Shellfunktion unalias hebt ein durch das alias-Shellkommando gesetztes Synonym für ein Kommando wieder auf.
Mit der Option ` -a' werden alle Synonyme gelöscht.
[
- fv]
[
Name ...]
Mit der Shellfunktion unset werden Shellvariable oder Shellfunktionen aus dem Speicher entfernt. Mit der Option ` -f' wird die bezeichnete Funktion aus dem Speicher gelöscht, mit der Option ` -v' die entsprechende Variable. Wenn keine der Optionen angegeben ist, wird zuerst versucht, eine Variable mit passendem Namen zu entfernen, und nur wenn dieser Versuch fehlschlägt, wird die entsprechende Funktion aus der Shellumgebung entfernt.
Eine Variable bzw. eine Funktion kann nur mit dem unset-Kommando wirklich aus dem Speicher entfernt werden. Wenn eine Variable mit der leeren Zeichenkette `` '' belegt ist, gilt sie weiterhin als gesetzt.
Die Shellvariablen PATH, IFS, PPID, PS1, PS2, UID und EUID können nicht aus dem Arbeitsspeicher der Shell entfernt werden.
[
Jobspezifikation | Prozeßnummer]
Die Shellfunktion wait wartet auf die Beendigung des durch die Jobspezifikation (Jobnummer oder Kommandoname) oder die Prozeßnummer angegebenen Hintergrundprozesses und gibt dessen Status aus.
Wenn kein Job spezifiziert wurde, wartet die Shellfunktion auf alle aktiven
Hintergrundprozesse.