GoGPT Best VPN GoSearch

OnWorks-Favicon

tcsh – Online in der Cloud

Führen Sie tcsh im kostenlosen OnWorks-Hosting-Provider über Ubuntu Online, Fedora Online, Windows-Online-Emulator oder MAC OS-Online-Emulator aus

Dies ist der Befehl tcsh, der im kostenlosen OnWorks-Hosting-Provider über eine unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, Windows-Online-Emulator oder MAC OS-Online-Emulator ausgeführt werden kann

PROGRAMM:

NAME/FUNKTION


tcsh - C-Shell mit Dateinamenvervollständigung und Befehlszeilenbearbeitung

ZUSAMMENFASSUNG


tcsh [-bcdefFimnqstvVxX] [-Dname[=Wert]] [arg...]
tcsh -l

BESCHREIBUNG


tcsh ist eine erweiterte, aber vollständig kompatible Version der Berkeley UNIX C-Shell,
csh(1). Es ist ein Befehlssprachen-Interpreter, der sowohl als interaktive Login-Shell verwendet werden kann
und einen Shell-Skript-Befehlsprozessor. Es enthält einen Befehlszeileneditor (siehe Die Befehl-
Linie Herausgeber), programmierbare Wortvervollständigung (siehe Abschlüsse und listing), Rechtschreibung
Korrektur (siehe Rechtschreibung Korrektur), ein Geschichtsmechanismus (siehe Geschichte Substitution), Job
Kontrolle (siehe Jobs) und eine C-ähnliche Syntax. Die NEU MERKMALE Abschnitt beschreibt Major
Erweiterungen von tcsh übrig csh(1). In diesem Handbuch werden die Funktionen von tcsh nicht gefunden in
vor allem warme csh(1) Implementierungen (insbesondere die 4.4BSD csh) sind mit `(+)' gekennzeichnet, und
Funktionen, die in vorhanden sind csh(1) aber normalerweise nicht dokumentiert sind mit `(u)' gekennzeichnet.

Argument Liste Verarbeitung
Wenn das erste Argument (Argument 0) der Shell `-' ist, handelt es sich um eine Login-Shell. Ein Login
Shell kann auch angegeben werden, indem die Shell mit dem aufgerufen wird -l Flag als einziges Argument.

Die restlichen Flagargumente werden wie folgt interpretiert:

-b Erzwingt einen ``break'' von der Optionsverarbeitung, was dazu führt, dass alle weiteren Shell-Argumente
als Nicht-Optionsargumente behandelt. Die restlichen Argumente werden nicht interpretiert als
Shell-Optionen. Dies kann verwendet werden, um Optionen ohne Verwirrung an ein Shell-Skript zu übergeben
oder mögliche Täuschung. Ohne dies wird die Shell kein Set-User-ID-Skript ausführen
.

-c Befehle werden aus dem folgenden Argument gelesen (das vorhanden sein muss und a . sein muss)
einzelnes Argument), gespeichert im Befehl Shell-Variable als Referenz und ausgeführt.
Alle verbleibenden Argumente werden in das argv Shell-Variable.

-d Die Shell lädt den Verzeichnisstapel von ~/.cshdirs wie unter beschrieben Startup und
Schließung, unabhängig davon, ob es sich um eine Login-Shell handelt oder nicht. (+)

-DName[=Wert]
Setzt die Umgebungsvariable Name zu Wert. (nur Domain/OS) (+)

-e Die Shell wird beendet, wenn ein aufgerufener Befehl abnormal beendet wird oder einen Exit ungleich Null liefert
Status.

-f Die Shell lädt keine Ressourcen- oder Startdateien und führt kein Befehls-Hashing durch.
und startet somit schneller.

-F Die Shell verwendet Gabel(2) statt vgabel(2) Prozesse hervorbringen. (+)

-i Die Shell ist interaktiv und fordert zur Eingabe der obersten Ebene auf, selbst wenn es so aussieht
kein Terminal sein. Shells sind ohne diese Option interaktiv, wenn ihre Eingaben und
Ausgänge sind Klemmen.

-l Die Shell ist eine Login-Shell. Nur anwendbar, wenn -l ist das einzige angegebene Flag.

-m Die Shell lädt ~/.tcshrc auch wenn es nicht dem effektiven Benutzer gehört. Neuere
Versionen su(1) kann bestehen -m zur Schale. (+)

-n Die Shell analysiert Befehle, führt sie jedoch nicht aus. Dies hilft beim Debuggen der Shell
Skripte.

-q Die Shell akzeptiert SIGQUIT (siehe Signal Umgang) und verhält sich bei Verwendung unter a
Debugger. Die Auftragssteuerung ist deaktiviert. (u)

-s Die Befehlseingabe wird von der Standardeingabe übernommen.

-t Die Shell liest eine einzelne Eingabezeile und führt sie aus. Ein `\' kann verwendet werden, um dem . zu entkommen
newline am Ende dieser Zeile und fahren Sie mit einer anderen Zeile fort.

-v Stellt das ein ausführlich Shell-Variable, damit die Befehlseingabe nach dem Verlauf wiederholt wird
Auswechslung.

-x Stellt das ein Echo Shell-Variable, so dass Befehle unmittelbar vor dem Echo ausgegeben werden
Ausführung.

-V Stellt das ein ausführlich Shell-Variable noch vor der Ausführung ~/.tcshrc.

-X Ist zu -x as -V ist -v.

--help
Drucken Sie eine Hilfemeldung auf der Standardausgabe und beenden Sie sie. (+)

--Version
Drucken Sie die Versions-/Plattform-/Kompilierungsoptionen auf der Standardausgabe und beenden Sie sie. Dies
Informationen sind auch in der Version Shell-Variable. (+)

Nach der Verarbeitung von Flag-Argumenten, wenn Argumente übrig bleiben, aber keines der -c, -i, -s oder -t
Optionen angegeben wurden, wird das erste Argument als Name einer Befehlsdatei verwendet, oder
``Skript'', das ausgeführt werden soll. Die Shell öffnet diese Datei und speichert ihren Namen für eventuelle
Ersetzung durch `$0'. Da viele Systeme entweder die Standardversion 6 oder die Version verwenden
7 Shells, deren Shell-Skripte nicht mit dieser Shell kompatibel sind, verwendet die Shell z
`Standard'-Shell, um ein Skript auszuführen, dessen erstes Zeichen kein `#' ist, dh das tut es
nicht mit einem Kommentar beginnen.

Die restlichen Argumente werden in die argv Shell-Variable.

Startup und Schließung
Eine Login-Shell beginnt mit der Ausführung von Befehlen aus den Systemdateien /etc/csh.cshrc und
/etc/csh.login. Es führt dann Befehle aus Dateien in der Benutzeroberfläche aus Startseite Verzeichnis: zuerst
~/.tcshrc (+) oder, wenn ~/.tcshrc wurde nicht gefunden, ~/.cshrc und dann ~/.Geschichte (oder der Wert von
die histfile Shell-Variable), dann ~/.login, und schlussendlich ~/.cshdirs (oder der Wert des
dirsfile Shellvariable) (+). Die Shell kann lesen /etc/csh.login vorher statt nachher
/etc/csh.cshrc und ~/.login vorher statt nachher ~/.tcshrc or ~/.cshrc und ~/.Geschichte,
falls so zusammengestellt; sieh das Version Shell-Variable. (+)

Nicht-Login-Shells schreibgeschützt /etc/csh.cshrc und ~/.tcshrc or ~/.cshrc beim Start.

Beispiele für Startdateien finden Sie unter http://tcshrc.sourceforge.net.

Befehle wie stty(1) und tset(1), die nur einmal pro Login ausgeführt werden müssen, gehen normalerweise in
Einsen ~/.login Datei. Benutzer, die denselben Dateisatz mit beiden verwenden müssen csh(1) und
tcsh kann nur a . haben ~/.cshrc die die Existenz der prüft tcsh Shell-Variable
(qv) vor der Verwendung tcsh-spezifische Befehle oder können beide haben a ~/.cshrc und eine ~/.tcshrc
welche Quelles (siehe den eingebauten Befehl) ~/.cshrc. Der Rest dieses Handbuchs verwendet
`~/.tcshrc' bedeutet '~/.tcshrc oder wenn ~/.tcshrc wurde nicht gefunden, ~/.cshrc'.

Im Normalfall beginnt die Shell mit dem Lesen von Befehlen aus dem Terminal und fordert mit `> . auf
'. (Verarbeitung von Argumenten und Verwendung der Shell zum Verarbeiten von Dateien, die Befehl enthalten
Skripte werden später beschrieben.) Die Shell liest wiederholt eine Zeile mit Befehlseingabe, bricht
es in Worte umwandelt, in die Befehlsverlaufsliste einfügt, es analysiert und jeden Befehl ausführt
in der Schlange.

Man kann sich abmelden, indem man `^D' in eine leere Zeile eingibt, `logout' oder `login' oder über die Shell
Autologout-Mechanismus (siehe die Autologout Shellvariable). Wenn eine Login-Shell beendet wird
es setzt die Abmeldung Shell-Variable auf `normal' oder `automatisch', dann wird ausgeführt
Befehle aus den Dateien /etc/csh.logout und ~/.logout. Die Shell kann DTR beim Abmelden löschen
falls so zusammengestellt; sieh das Version Shell-Variable.

Die Namen der System-Login- und Logout-Dateien variieren von System zu System für
Kompatibilität mit verschiedenen csh(1) Varianten; sehen DATEIEN.

Bearbeitung
Wir beschreiben zuerst Die Befehlszeilen Herausgeberdem „Vermischten Geschmack“. Seine Abschlüsse und listing und Rechtschreibung
Korrektur Abschnitte beschreiben zwei Sätze von Funktionalitäten, die als Editor implementiert werden
Befehle, die jedoch ihre eigene Behandlung verdienen. Schließlich, Herausgeber Befehle Listen und
beschreibt die für die Shell spezifischen Editorbefehle und ihre Standardbindungen.

Die Befehlszeilen Herausgeber (+)
Befehlszeileneingaben können mit Tastenfolgen bearbeitet werden, ähnlich denen in GNU Emacs oder
vi(1). Der Editor ist nur aktiv, wenn die bearbeiten Shell-Variable ist gesetzt, was es ist
Standard in interaktiven Shells. Die Bindungsschlüssel Builtin kann Tastenbelegungen anzeigen und ändern.
Standardmäßig werden Tastenkombinationen im Emacs-Stil verwendet (sofern die Shell nicht anders kompiliert wurde; siehe
die Version Shell-Variable), aber Bindungsschlüssel kann die Tastenbelegung ändern auf vi-style Bindungen
en masse.

Die Shell bindet immer die Pfeiltasten (wie im TERMCAP Umgebungsvariable) zu

nach unten Geschichte
up Up-Geschichte
links Rückwärts-Zeichen
Recht vorwärts-char

es sei denn, dies würde eine andere Einzelzeichenbindung ändern. Man kann die Pfeiltaste einstellen
Escape-Sequenzen in die leere Zeichenfolge mit Einst um diese Bindungen zu verhindern. Der ANSI/VT100
Sequenzen für Pfeiltasten sind immer gebunden.

Andere Tastenkombinationen sind zum größten Teil das, was Emacs und vi(1) Benutzer würden erwarten und können
leicht angezeigt werden von Bindungsschlüssel, daher ist es nicht erforderlich, sie hier aufzulisten. Gleichfalls, Bindungsschlüssel
können die Editorbefehle mit einer kurzen Beschreibung auflisten.

Beachten Sie, dass Editorbefehle nicht die gleiche Vorstellung von einem ``Wort'' haben wie die Shell.
Der Editor trennt Wörter mit allen nicht-alphanumerischen Zeichen, die nicht in der Shell-Variablen enthalten sind
Wortzeichen, während die Shell nur Leerzeichen und einige der Zeichen mit erkennt
besondere Bedeutungen, aufgeführt unter Lexikalisch Struktur.

Abschlüsse und listing (+)
Die Shell ist oft in der Lage, Wörter zu vervollständigen, wenn sie eine eindeutige Abkürzung erhält. Typteil von
ein Wort (zum Beispiel `ls /usr/lost') und drücken Sie die Tabulatortaste, um die vollständiges Wort Herausgeber
Befehl. Die Shell vervollständigt den Dateinamen `/usr/lost' zu `/usr/lost+found/' und ersetzt
das unvollständige Wort mit dem vollständigen Wort im Eingabepuffer. (Beachten Sie das Terminal `/';
Vervollständigung fügt ein `/' an das Ende von abgeschlossenen Verzeichnissen und ein Leerzeichen an das Ende von other an
abgeschlossenen Wörtern, um das Tippen zu beschleunigen und einen visuellen Indikator für den erfolgreichen Abschluss bereitzustellen.
Die Zusatzsuffix Shell-Variable kann deaktiviert werden, um dies zu verhindern.) Wenn keine Übereinstimmung gefunden wird (vielleicht
`/usr/lost+found' existiert nicht), läutet die Terminalglocke. Wenn das Wort schon ist
vollständig (vielleicht gibt es ein `/usr/lost' auf Ihrem System, oder vielleicht haben Sie auch daran gedacht
weit vorne und tippte das Ganze ein) ein `/' oder ein Leerzeichen wird am Ende hinzugefügt, wenn dies nicht der Fall ist
schon da.

Die Vervollständigung funktioniert überall in der Zeile, nicht nur am Ende; fertiger Text schiebt den Rest
der Linie nach rechts. Die Vervollständigung mitten in einem Wort führt oft zu Resten
Zeichen rechts vom Cursor, die gelöscht werden müssen.

Befehle und Variablen können auf ähnliche Weise ausgeführt werden. Zum Beispiel tippen
`em[tab]' würde `em' zu `emacs' vervollständigen, wenn Emacs waren der einzige Befehl auf Ihrem System
beginnend mit 'em'. Die Vervollständigung kann einen Befehl in einem beliebigen Verzeichnis finden in Weg oder wenn gegeben a
vollständiger Pfadname. Die Eingabe von `echo $ar[tab]' würde `$ar' zu `$argv' vervollständigen, wenn kein anderer
Variable begann mit `ar'.

Die Shell analysiert den Eingabepuffer, um festzustellen, ob das Wort, das Sie vervollständigen möchten
sollte als Dateiname, Befehl oder Variable ausgefüllt werden. Das erste Wort im Puffer und
das erste Wort nach `;', `|', `|&', `&&' oder `||' gilt als Befehl. EIN
Wort, das mit `$' beginnt, wird als Variable betrachtet. Alles andere ist ein Dateiname. Ein
leere Zeile wird als Dateiname `ergänzt'.

Sie können jederzeit die möglichen Vervollständigungen eines Wortes auflisten, indem Sie `^D' eingeben, um die
delete-char-or-list-or-eof Editor-Befehl. Die Shell listet die möglichen Vervollständigungen mit . auf
die ls-F builtin (qv) und gibt die Eingabeaufforderung und die unvollendete Befehlszeile erneut aus, zum Beispiel:

> ls /usr/l[^D]
lbin/ lib/ local/ verloren+gefunden/
> ls /usr/l

Besitzt das Autoliste Shell-Variable gesetzt ist, listet die Shell die verbleibenden Auswahlmöglichkeiten auf (falls vorhanden)
wenn die Fertigstellung fehlschlägt:

> Autoliste einstellen
> nm /usr/lib/libt[tab]
libtermcap.a@ libtermlib.a@
> nm /usr/lib/libterm

If Autoliste auf "mehrdeutig" gesetzt ist, werden die Auswahlmöglichkeiten nur aufgelistet, wenn die Vervollständigung fehlschlägt und hinzugefügt wird
keine neuen Zeichen für das zu vervollständigende Wort.

Ein zu vervollständigender Dateiname kann Variablen, eigene oder fremde Home-Verzeichnisse enthalten
abgekürzt mit `~' (siehe Dateiname Substitution) und Verzeichnis-Stack-Einträge abgekürzt
mit `=' (siehe Verzeichnis Stapel Substitution). Zum Beispiel,

> ls ~k[^D]
kahn kas kellogg
> ls ~ke[tab]
> ls ~kellogg/

or

> lokal einstellen = Verzeichnis / usr / local
> ls $lo[tab]
> ls $lokal/[^D]
bin/etc/lib/man/src/
> ls $lokal/

Beachten Sie, dass Variablen auch explizit mit dem erweitert werden können Expand-Variablen Herausgeber
Befehl.

delete-char-or-list-or-eof Listen nur am Ende der Zeile; in der mitte einer zeile es
löscht das Zeichen unter dem Cursor und in einer leeren Zeile meldet es einen ab oder, wenn
ignorieren eingestellt ist, tut sich nichts. `M-^D', gebunden an den Editorbefehl Listenauswahl, Listen
Vervollständigungsmöglichkeiten überall auf einer Linie, und Listenauswahl (oder eine der verwandten
Editorbefehle, die löschen oder nicht löschen, auflisten und/oder abmelden, aufgeführt unter delete-char-oder-
Liste-oder-eof) kann mit dem an `^D' gebunden werden Bindungsschlüssel eingebauter Befehl, falls gewünscht.

Die Komplett-Wort-Fwd und komplett-wort-zurück Editorbefehle (nicht an Tasten gebunden durch
default) kann verwendet werden, um die Liste der möglichen Vervollständigungen nach oben und unten zu durchlaufen,
Ersetzen des aktuellen Worts durch das nächste oder vorherige Wort in der Liste.

Die Shell-Variable figurieren kann auf eine Liste von Suffixen gesetzt werden, die bei der Vervollständigung ignoriert werden.
Betrachten Sie das folgende:

> ls
Makefile Gewürze.h~ main.o side.c
README main.c Mahlzeit side.o
Gewürze.h main.c~
> setze figore = (.o \~)
> emacs ma[^D]
main.c main.c~ main.o
> emacs-ma[tab]
> emacs main.c

`main.c~' und `main.o' werden bei der Vervollständigung ignoriert (aber nicht aufgelistet), da sie auf enden
Suffixe in figurieren. Beachten Sie, dass ein `\' vor `~' benötigt wurde, um zu verhindern, dass es
erweitert auf Startseite wie unter beschrieben Dateiname Substitution. figurieren wird ignoriert, wenn nur einer
Abschluss ist möglich.

Besitzt das gesamten Shell-Variable ist auf `enhance' gesetzt, Vervollständigung 1) ignoriert Groß-/Kleinschreibung und 2)
betrachtet Punkte, Bindestriche und Unterstriche (`.', `-' und `_') als Worttrenner und
Bindestriche und Unterstriche als gleichwertig. Wenn Sie die folgenden Dateien hätten

comp.lang.c comp.lang.perl comp.std.c++
comp.lang.c++ comp.std.c

und tippte `mail -f clc[tab]' ein, es würde zu `mail -f comp.lang.c' vervollständigt und ^D
würde `comp.lang.c' und `comp.lang.c++' auflisten. `mail -f c..c++[^D]' würde auflisten
`comp.lang.c++' und `comp.std.c++'. Geben Sie `rm a--file[^D]' in das folgende Verzeichnis ein

A_silly_file a-hyphenated-file other_silly_file

würde alle drei Dateien auflisten, da die Groß-/Kleinschreibung ignoriert wird und Binde- und Unterstriche sind
gleichwertig. Punkte sind jedoch nicht gleichbedeutend mit Bindestrichen oder Unterstrichen.

Besitzt das gesamten Shell-Variable ist auf `Enhance' gesetzt, Vervollständigung ignoriert Groß-/Kleinschreibung und
Unterschiede zwischen einem Bindestrich und einem Unterstrich-Worttrennzeichen nur, wenn der Benutzer a . eingibt
Kleinbuchstaben oder Bindestrich. Die Eingabe eines Großbuchstabens oder eines Unterstrichs wird
stimmt nicht mit dem entsprechenden Kleinbuchstaben- oder Bindestrich-Worttrennzeichen überein. `rm . eingeben
a--file[^D]' im Verzeichnis des vorherigen Beispiels würde immer noch alle drei Dateien auflisten,
aber die Eingabe von `rm A--file' würde nur mit `A_silly_file' übereinstimmen und die Eingabe von `rm a__file[^D]' würde
stimmen nur mit `A_silly_file' und `another_silly_file' überein, da der Benutzer explizit ein . verwendet hat
Großbuchstaben oder ein Unterstrichzeichen.

Vervollständigung und Auflistung werden von mehreren anderen Shell-Variablen beeinflusst: genau kann eingestellt werden
den kürzestmöglichen eindeutigen Treffer zu vervollständigen, auch wenn mehr Tippen zu einem führen könnte
längeres Spiel:

> ls
futter foo essen foonly
> reexakt einstellen
> rm fo[tab]

piept nur, weil `fo' zu `fod' oder `foo' erweitert werden könnte, aber wenn wir ein weiteres `o' eingeben,

> rm foo[tab]
> rm foo

die Vervollständigung endet mit `foo', obwohl `food' und `foonly' ebenfalls übereinstimmen. automatisch erweitern
kann so eingestellt werden, dass die Erweitern-Geschichte Editor-Befehl vor jedem Abschlussversuch,
Autokorrektur kann auf Rechtschreibkorrektur eingestellt werden, um das Wort zu vervollständigen (siehe Rechtschreibung
Korrektur) vor jedem Abschlussversuch und und beseitigen Muskelschwäche kann eingestellt werden, um Befehle zu vervollständigen
automatisch, nachdem man auf `return' geklickt hat. Matchbeep kann so eingestellt werden, dass ein Abschlusston ausgegeben wird oder
in einer Vielzahl von Situationen nicht piepsen, und kein piep kann so eingestellt werden, dass er nie piept. nostat
kann auf eine Liste von Verzeichnissen und/oder Mustern gesetzt werden, die mit Verzeichnissen übereinstimmen, um zu verhindern, dass
Vervollständigungsmechanismus von Zustand(2) diese Verzeichnisse. Listemax und listmaxrows kann sein
Festlegen, um die Anzahl der Elemente und Zeilen (jeweils) zu begrenzen, die aufgelistet werden, ohne zu fragen
zuerst. erkennung_nur_ausführbare Dateien kann so eingestellt werden, dass die Shell-Liste nur ausführbar ist, wenn
Auflisten von Befehlen, aber es ist ziemlich langsam.

Schließlich wird der gesamten Der eingebaute Befehl kann verwendet werden, um der Shell mitzuteilen, wie Wörter zu vervollständigen sind
außer Dateinamen, Befehlen und Variablen. Vervollständigung und Auflistung funktionieren weltweit nicht.
Muster (siehe Dateiname Substitution), aber die Liste-Glob und expand-globus Editorbefehle
äquivalente Funktionen für Glob-Muster ausführen.

Rechtschreibung Korrektur (+)
Die Shell kann manchmal die Schreibweise von Dateinamen, Befehlen und Variablennamen korrigieren, da
sowie diese auszufüllen und aufzulisten.

Einzelne Wörter können mit der Zauberwort Editor-Befehl (normalerweise
gebunden an Ms und MS) und den gesamten Eingabepuffer mit Zauberlinie (normalerweise an M-$ gebunden).
Die und beseitigen Muskelschwäche Shell-Variable kann auf `cmd' gesetzt werden, um den Befehlsnamen zu korrigieren oder `all' auf
Korrigieren Sie die gesamte Zeile jedes Mal, wenn return eingegeben wird, und Autokorrektur kann eingestellt werden, um zu korrigieren
das Wort, das vor jedem Vervollständigungsversuch zu vervollständigen ist.

Wenn die Rechtschreibkorrektur auf eine dieser Weisen aufgerufen wird und die Shell denkt, dass alle
ein Teil der Befehlszeile falsch geschrieben ist, wird mit der korrigierten Zeile angezeigt:

> richtig einstellen = cmd
> lz / usr / bin
RICHTIG>ls / usr / bin (j|n|e|a)?

Man kann 'y' oder Leerzeichen beantworten, um die korrigierte Zeile auszuführen, 'e', ​​um die unkorrigierte zu lassen
Befehl im Eingabepuffer, `a' um den Befehl abzubrechen, als ob `^C' getroffen worden wäre, und
alles andere, um die ursprüngliche Zeile unverändert auszuführen.

Die Rechtschreibkorrektur erkennt benutzerdefinierte Vervollständigungen (siehe die gesamten builtin
Befehl). Wenn ein Eingabewort an einer Position, für die eine Vervollständigung definiert ist, a
Wort in der Vervollständigungsliste, die Rechtschreibkorrektur registriert einen Rechtschreibfehler und schlägt die
letzteres Wort als Korrektur. Wenn das Eingabewort jedoch mit keinem der
mögliche Vervollständigungen für diese Position, Rechtschreibkorrektur wird nicht registriert a
Rechtschreibfehler.

Wie bei der Vervollständigung funktioniert die Rechtschreibkorrektur überall in der Zeile und schiebt den Rest der
Zeile nach rechts und lassen möglicherweise zusätzliche Zeichen rechts vom Cursor.

Achtung: Die Rechtschreibkorrektur funktioniert nicht wie gewünscht und wird bereitgestellt
meist als experimentelle Funktion. Vorschläge und Verbesserungen sind willkommen.

Herausgeber Befehle (+)
`bindkey' listet Tastenkombinationen auf und `bindkey -l' listet auf und beschreibt kurz die Editorbefehle.
Hier werden nur neue oder besonders interessante Editorbefehle beschrieben. Sehen Emacs(1) und
vi(1) für Beschreibungen der Tastenbelegung jedes Editors.

Das Zeichen oder die Zeichen, an die jeder Befehl standardmäßig gebunden ist, wird in angegeben
Klammern. `^Charakter' bedeutet ein Steuerzeichen und `M-Charakter' ein Metazeichen,
getippt als Escape-Charakter auf Terminals ohne Metaschlüssel. Der Fall zählt, aber befiehlt das
sind standardmäßig an Buchstaben gebunden sind sowohl an Klein- als auch an Großbuchstaben gebunden für
Bequemlichkeit.

vollständiges Wort (Tab)
Vervollständigt ein Wort wie unter . beschrieben Abschlüsse und listing.

komplett-wort-zurück (nicht gebunden)
Like Komplett-Wort-Fwd, aber vom Ende der Liste nach oben.

Komplett-Wort-Fwd (nicht gebunden)
Ersetzt das aktuelle Wort durch das erste Wort in der Liste der möglichen Vervollständigungen.
Kann wiederholt werden, um durch die Liste nach unten zu gehen. Am Ende der Liste piept und
kehrt zum unvollständigen Wort zurück.

komplett-wort-roh (^X-Tab)
Like vollständiges Wort, ignoriert jedoch benutzerdefinierte Vervollständigungen.

kopieren-vorheriges-Wort (M-^_)
Kopiert das vorherige Wort der aktuellen Zeile in den Eingabepuffer. Siehe auch
letztes Wort einfügen.

dabbrev-erweitern (M-/)
Erweitert das aktuelle Wort zum letzten vorhergehenden Wort, für das das aktuelle ist
eine führende Teilzeichenfolge, die die Verlaufsliste (einmal) umschließt, falls erforderlich.
Die Wiederholung dabbrev-erweitern ohne zwischenzeitliches Tippen wechselt zum nächsten
vorheriges Wort usw., Überspringen identischer Übereinstimmungen ähnlich wie Geschichte-Suche-zurück
tut.

Löschzeichen (bei Verwendung des Standards an `Del' gebunden /etc/csh.cshrc)
Löscht das Zeichen unter dem Cursor. Siehe auch delete-char-or-list-or-eof.

delete-char-oder-eof (nicht gebunden)
Beeinflusst die Löschzeichen wenn sich unter dem Cursor ein Zeichen befindet oder Ende der Datei auf ein
leere Zeile. Siehe auch delete-char-or-list-or-eof.

Zeichen-oder-Liste löschen (nicht gebunden)
Beeinflusst die Löschzeichen wenn sich unter dem Cursor ein Zeichen befindet oder Listenauswahl im
Ende der Zeile. Siehe auch delete-char-or-list-or-eof.

delete-char-or-list-or-eof (^D)
Beeinflusst die Löschzeichen wenn sich unter dem Cursor ein Zeichen befindet, Listenauswahl Am Ende
der Linie oder Ende der Datei in einer leeren Zeile. Siehe auch diese drei Befehle, jeweils
von denen nur eine einzige Aktion ausgeführt wird, und delete-char-oder-eof, Zeichen-oder-Liste löschen
und Liste-oder-eof, von denen jeder andere zwei von drei macht.

Geschichte (Pfeil nach unten, ^N)
Like Up-Geschichte, aber geht nach unten und stoppt an der ursprünglichen Eingabezeile.

Ende der Datei (nicht gebunden)
Signalisiert ein Dateiende, wodurch die Shell beendet wird, es sei denn, die ignorieren Schale
Variable (qv) wird gesetzt, um dies zu verhindern. Siehe auch delete-char-or-list-or-eof.

Erweitern-Geschichte (M-Raum)
Erweitert Verlaufsersetzungen im aktuellen Wort. Sehen Geschichte Substitution. Sehen
ebenfalls Zauberraum, toggle-literal-history und der automatisch erweitern Shell-Variable.

expand-globus (^X-*)
Erweitert das Glob-Muster links vom Cursor. Sehen Dateiname Substitution.

expand-line (nicht gebunden)
Like Erweitern-Geschichte, erweitert jedoch die Verlaufsersetzungen in jedem Wort in der Eingabe
Puffer.

Expand-Variablen (^X-$)
Erweitert die Variable links vom Cursor. Sehen Variable Substitution.

Geschichte-Suche-zurück (Mp, MP)
Durchsucht die Verlaufsliste rückwärts nach einem Befehl, der mit dem beginnt
aktuellen Inhalt des Eingabepuffers bis zum Cursor und kopiert ihn in die Eingabe
Puffer. Der Suchstring kann ein Glob-Muster sein (siehe Dateiname Substitution)
mit `*', `?', `[]' oder `{}'. Up-Geschichte und Geschichte wird fortfahren von
an der entsprechenden Stelle in der Verlaufsliste. Nur Emacs-Modus. Siehe auch Geschichte-
vorwärts suchen und ich-suche-zurück.

Geschichte-Suche-vorwärts (Mn, MN)
Like Geschichte-Suche-zurück, sucht aber vorwärts.

ich-suche-zurück (nicht gebunden)
Sucht rückwärts wie Geschichte-Suche-zurück, kopiert die erste Übereinstimmung in die
Eingabepuffer mit Cursor am Ende des Musters und Eingabeaufforderungen
mit `bck: ' und der ersten Übereinstimmung. Zur Erweiterung können zusätzliche Zeichen eingegeben werden
die Suche, ich-suche-zurück kann eingegeben werden, um mit der Suche fortzufahren
Muster, bei Bedarf um die Verlaufsliste wickeln, (ich-suche-zurück muß
an ein einzelnes Zeichen gebunden, damit dies funktioniert) oder eines der folgenden Specials
Zeichen können eingegeben werden:

^W Hängt den Rest des Wortes unter dem Cursor an das Suchmuster an.
löschen (oder ein beliebiges Zeichen gebunden an rückwärts-löschen-zeichen)
Macht den Effekt des zuletzt eingegebenen Zeichens rückgängig und löscht ein Zeichen
aus dem Suchmuster, falls zutreffend.
^G Wenn die vorherige Suche erfolgreich war, wird die gesamte Suche abgebrochen. Wenn
nicht, geht zurück zur letzten erfolgreichen Suche.
escape Beendet die Suche und belässt die aktuelle Zeile im Eingabepuffer.

Jeder andere Charakter, an den nicht gebunden ist Selbsteinfügebefehl beendet die Suche,
Belässt die aktuelle Zeile im Eingabepuffer und wird dann als normal interpretiert
Eingang. Insbesondere ein Wagenrücklauf bewirkt die Ausführung der aktuellen Zeile.
Nur Emacs-Modus. Siehe auch i-Suche-fwd und Geschichte-Suche-zurück.

i-Suche-fwd (nicht gebunden)
Like ich-suche-zurück, sucht aber vorwärts.

letztes Wort einfügen (M-_)
Fügt das letzte Wort der vorherigen Eingabezeile (`!$') in den Eingabepuffer ein.
Web Link kopieren-vorheriges-Wort.

Listenauswahl (M-^T)
Listet Vervollständigungsmöglichkeiten wie unter beschrieben auf Abschlüsse und listing. Sehen
ebenfalls delete-char-or-list-or-eof und Listenauswahl-roh.

Listenauswahl-roh (^X-^D)
Like Listenauswahl, ignoriert jedoch benutzerdefinierte Vervollständigungen.

Liste-Glob (^Xg, ^XG)
Listen (über die ls-F builtin) stimmt mit dem Glob-Muster überein (siehe Dateiname
Substitution) links vom Cursor.

Liste-oder-eof (nicht gebunden)
Beeinflusst die Listenauswahl or Ende der Datei in einer leeren Zeile. Siehe auch delete-char-or-list-
oder-eof.

Zauberraum (nicht gebunden)
Erweitert Verlaufsersetzungen in der aktuellen Zeile, z. B. Erweitern-Geschichte und
fügt ein Leerzeichen ein. Zauberraum soll an die Leertaste gebunden werden, ist es aber nicht
standardmäßig gebunden.

normalisieren-Befehl (^X-?)
Sucht nach dem aktuellen Wort in PATH und ersetzt es, falls es gefunden wird, durch das
vollständiger Pfad zur ausführbaren Datei. Sonderzeichen werden zitiert. Aliase werden erweitert
und Anführungszeichen, Befehle innerhalb von Aliasnamen jedoch nicht. Dieser Befehl ist nützlich mit
Befehle, die Befehle als Argumente annehmen, zB `dbx' und `sh -x'.

normalisieren-Pfad (^Xn, ^XN)
Erweitert das aktuelle Wort, wie unter der Einstellung `erweitern' des Symlinks
Shell-Variable.

Überschreibmodus (ungebunden)
Schaltet zwischen Eingabe- und Überschreibmodus um.

run-fg-editor (M-^Z)
Speichert die aktuelle Eingabezeile und sucht nach einem gestoppten Job mit einem Namen gleich dem
letzter Bestandteil des Dateinamens Teil des EDITOR or VISUAL -Umgebung
Variablen, oder, wenn keines gesetzt ist, `ed' oder `vi'. Wenn ein solcher Job gefunden wird, ist es
neu gestartet als ob `fg %Job“ war getippt. Dies wird verwendet, um hin und her zu schalten
zwischen einem Editor und der Shell einfach. Manche Leute binden diesen Befehl an `^Z', also
sie können dies noch einfacher tun.

Laufhilfe (Mh, MH)
Sucht nach Dokumentation zum aktuellen Befehl unter Verwendung des gleichen Begriffs von
`aktueller Befehl' als Abschlussroutinen und gibt ihn aus. Es gibt keine Möglichkeit
einen Pager verwenden; Laufhilfe ist für kurze Hilfedateien ausgelegt. Wenn der spezielle Alias
Hilfebefehl definiert ist, wird es mit dem Befehlsnamen als einzigem Argument ausgeführt. Anders,
Dokumentation sollte in einer Datei namens . sein Befehl.Hilfe, Befehl. 1, Befehl. 6,
Befehl.8 oder Befehl, die sich in einem der Verzeichnisse befinden sollte, die in der Liste aufgeführt sind
HPATH Umgebungsvariable. Wenn es mehr als eine Hilfedatei gibt, ist nur die erste
gedruckt.

Selbsteinfügebefehl (Textzeichen)
Fügt im Einfügemodus (Standard) das eingegebene Zeichen in die Eingabezeile ein
nach dem Zeichen unter dem Cursor. Ersetzt im Überschreibmodus das Zeichen
unter dem Cursor mit dem eingegebenen Zeichen. Der Eingabemodus bleibt normalerweise erhalten
zwischen den Zeilen, aber die Eingabemodus Shell-Variable kann auf `insert' gesetzt werden oder
`overwrite', um den Editor am Anfang jeder Zeile in diesen Modus zu versetzen. Sehen
ebenfalls Überschreibmodus.

Sequenz-Einleitung (Pfeilpräfix, Metapräfix, ^X)
Zeigt an, dass die folgenden Zeichen Teil einer Mehrfachtastenfolge sind. Bindung
ein Befehl an eine Mehrfachtastenfolge erzeugt wirklich zwei Bindungen: das erste Zeichen
zu Sequenz-Einleitung und die ganze Sequenz zum Befehl. Alle Sequenzen
beginnend mit einem an gebundenen Charakter Sequenz-Einleitung sind effektiv gebunden an
undefinierter Schlüssel sofern nicht an einen anderen Befehl gebunden.

Zauberlinie (M-$)
Versucht, die Schreibweise jedes Wortes im Eingabepuffer zu korrigieren, wie z Fluch-
Wort, ignoriert jedoch Wörter, deren erstes Zeichen `-', `!', `^' oder `%' ist, oder
die `\', `*' oder `?' enthalten, um Probleme mit Schaltern, Ersetzungen und . zu vermeiden
dergleichen. Sehen Rechtschreibung Korrektur.

Zauberwort (Frau, MS)
Versucht, die Schreibweise des aktuellen Wortes zu korrigieren, wie unter . beschrieben Rechtschreibung
Korrektur. Überprüft jede Komponente eines Wortes, die ein Pfadname zu sein scheint.

toggle-literal-history (Herr, Herr)
Erweitert oder `deexpandiert' Verlaufsersetzungen im Eingabepuffer. Siehe auch
Erweitern-Geschichte und der automatisch erweitern Shell-Variable.

undefinierter Schlüssel (beliebiger ungebundener Schlüssel)
Piepsen.

Up-Geschichte (Pfeil nach oben, ^P)
Kopiert den vorherigen Eintrag in der Historienliste in den Eingabepuffer. Wenn histlit
gesetzt ist, verwendet die Literalform des Eintrags. Kann wiederholt werden, um aufzusteigen
die Verlaufsliste und endet oben.

vi-suche-zurück (?)
Aufforderungen mit `?' für einen Suchstring (der ein Glob-Muster sein kann, wie bei
Geschichte-Suche-zurück), sucht danach und kopiert es in den Eingabepuffer.
Die Glocke läutet, wenn keine Übereinstimmung gefunden wird. Das Drücken von Return beendet die Suche und geht
die letzte Übereinstimmung im Eingabepuffer. Das Drücken von Escape beendet die Suche und wird ausgeführt
das Spiel. vi Nur Modus.

vi-Suche-fwd (/)
Like vi-suche-zurück, sucht aber vorwärts.

welcher-Befehl (M-?)
Tut ein welche (siehe Beschreibung des eingebauten Befehls) auf das erste Wort des
Eingangspuffer.

reißer (Mein)
Bei Ausführung unmittelbar nach a Ruck oder ein anderes reißer, ersetzt den gerissenen
String mit dem nächsten vorherigen String aus dem Killring. Das hat auch die Wirkung
den Killring zu drehen, so dass diese Saite als die meiste angesehen wird
vor kurzem von einem späteren getötet Ruck Befehl. Wiederholung reißer wird durch die radeln
töten beliebig oft.

Lexikalisch Struktur
Die Shell teilt Eingabezeilen an Leerzeichen und Tabulatoren in Wörter auf. Die Sonderzeichen `&',
`|', `;', `<', `>', `(', und `)' und die doppelten Zeichen `&&', `||', `<<' und `>>' sind
Trennen Sie immer Wörter, unabhängig davon, ob sie von Leerzeichen umgeben sind oder nicht.

Wenn die Eingabe der Shell kein Terminal ist, wird das Zeichen `#' verwendet, um einen Kommentar zu beginnen.
Jedes `#' und der Rest der Eingabezeile, in der es erscheint, wird vor dem weiteren verworfen
Parsing.

Ein Sonderzeichen (einschließlich Leerzeichen oder Tabulatoren) kann sein Sonderzeichen verhindern
Bedeutung und möglicherweise Teil eines anderen Wortes, indem ihm ein umgekehrter Schrägstrich (`\') vorangestellt wird oder
Einschließen in einfache (`''), doppelte (`"') oder rückwärts (``') Anführungszeichen. Wenn nicht anders
in Anführungszeichen steht ein Zeilenumbruch, dem ein `\' vorangestellt ist, entspricht einem Leerzeichen, aber innerhalb von Anführungszeichen dies
Sequenz führt zu einem Zeilenumbruch.

Darüber hinaus alle Auswechslungen (siehe unten) außer Geschichte Substitution kann verhindert werden durch
die Strings (oder Teile von Strings), in denen sie vorkommen, in einfache Anführungszeichen oder mit einschließen
das/die entscheidende(n) Zeichen zitieren (zB `$' oder ``' für Variable Substitution or Befehl
Substitution bzw.) mit `\'. (Alias Substitution ist keine Ausnahme: Zitieren in jedem
Weise jedes Zeichen eines Wortes, für das an alias wurde definiert verhindert das Ersetzen von
der Deckname. Die übliche Art, einen Alias ​​in Anführungszeichen zu setzen, besteht darin, ihm einen umgekehrten Schrägstrich voranzustellen.) Geschichte
Substitution wird durch Backslashes, aber nicht durch einfache Anführungszeichen verhindert. Mit zitierte Zeichenfolgen
doppelte oder rückwärts gerichtete Anführungszeichen durchlaufen Variable Substitution und Befehl Substitution, Aber
andere Substitutionen werden verhindert.

Text in einfachen oder doppelten Anführungszeichen wird zu einem einzelnen Wort (oder einem Teil davon).
Metazeichen in diesen Zeichenfolgen, einschließlich Leerzeichen und Tabulatoren, bilden keine separaten Wörter.
Nur in einem Sonderfall (siehe Befehl Substitution unten) kann eine Zeichenfolge in doppelten Anführungszeichen ergeben
Teile von mehr als einem Wort; Strings in einfachen Anführungszeichen tun dies nie. Rückwärtszitate sind etwas Besonderes:
sie signalisieren Befehl Substitution (qv), was zu mehr als einem Wort führen kann.

Komplexe Strings zitieren, insbesondere Strings, die selbst Anführungszeichen enthalten,
kann verwirrend sein. Denken Sie daran, dass Anführungszeichen nicht wie in der menschlichen Schrift verwendet werden müssen! Es
Es kann einfacher sein, nicht eine ganze Zeichenfolge zu zitieren, sondern nur die Teile der Zeichenfolge, die benötigt werden
zitieren, ggf. mit unterschiedlichen Zitierungsarten.

Die Backslash_Zitat Shell-Variable (qv) kann so eingestellt werden, dass Backslashes immer `\' in Anführungszeichen setzen,
`'' und `"'. (+) Dies kann komplexe Aufgaben beim Zitieren erleichtern, aber es kann Syntax verursachen
Fehler bei csh(1) Skripte.

Auswechslungen
Wir beschreiben nun die verschiedenen Transformationen, die die Shell an der Eingabe durchführt, in der Reihenfolge
in denen sie vorkommen. Wir vermerken nebenbei die beteiligten Datenstrukturen und die Befehle und
Variablen, die sie beeinflussen. Denken Sie daran, dass Ersetzungen verhindert werden können, indem Sie als zitieren
beschrieben unter Lexikalisch Struktur.

Geschichte Substitution
Jeder Befehl oder jedes ``Ereignis'', das vom Terminal eingegeben wird, wird in der Verlaufsliste gespeichert. Die
vorheriger Befehl wird immer gespeichert, und die Geschichte Shell-Variable kann auf eine Zahl gesetzt werden, um
speichern Sie so viele Befehle. Die histdup Shell-Variable kann so eingestellt werden, dass keine Duplikate gespeichert werden
Ereignisse oder aufeinanderfolgende doppelte Ereignisse.

Gespeicherte Befehle werden ab 1 fortlaufend nummeriert und mit der Uhrzeit versehen. Es ist nicht
normalerweise erforderlich, um Ereignisnummern zu verwenden, aber die aktuelle Ereignisnummer kann Teil von
die Eingabeaufforderung, indem Sie ein `!' in dem Eingabeaufforderung Shell-Variable.

Die Shell speichert den Verlauf tatsächlich in erweiterter und wörtlicher (nicht erweiterter) Form. Wenn die
histlit Shell-Variable gesetzt ist, verwenden Befehle, die den Verlauf anzeigen und speichern, das Literal
Form.

Die Geschichte eingebauter Befehl kann drucken, in einer Datei speichern, wiederherstellen und die Verlaufsliste löschen
jederzeit und die speichern und histfile Shell-Variablen können gesetzt werden, um den Verlauf zu speichern
automatisch beim Abmelden auflisten und beim Anmelden wiederherstellen.

Verlaufsersetzungen führen Wörter aus der Verlaufsliste in den Eingabestrom ein, wodurch
es einfach, Befehle zu wiederholen, Argumente eines vorherigen Befehls im aktuellen Befehl zu wiederholen,
oder korrigieren Sie Rechtschreibfehler im vorherigen Befehl mit wenig Tipparbeit und einem hohen Maß an
Vertrauen.

Verlaufsersetzungen beginnen mit dem Zeichen `!'. Sie können überall in der Eingabe beginnen
Strom, aber sie nisten nicht. Das `!' kann ein `\' vorangestellt werden, um seine Besonderheit zu verhindern
Bedeutung; der Einfachheit halber wird ein `!' wird unverändert übergeben, wenn ein Leerzeichen folgt, tab,
newline, `=' oder `('. Verlaufsersetzungen treten auch auf, wenn eine Eingabezeile mit `^' beginnt.
Diese spezielle Abkürzung wird später beschrieben. Die Zeichen, die verwendet werden, um die Geschichte zu signalisieren
Ersetzung (`!' und `^') kann durch Setzen der histchars Shell-Variable. Irgendein
Eingabezeile, die eine Historienersetzung enthält, wird gedruckt, bevor sie ausgeführt wird.

Eine Verlaufsersetzung kann eine ``Ereignisspezifikation'' haben, die das Ereignis von
welche Wörter zu nehmen sind, ein ``Wortbezeichner'', der bestimmte Wörter auswählt
das gewählte Ereignis und/oder einen ``Modifikator'', der die ausgewählten Wörter manipuliert.

Eine Ereignisspezifikation kann sein

n Eine Zahl, die sich auf ein bestimmtes Ereignis bezieht
-n Ein Offset, bezogen auf das Ereignis n vor der aktuellen Veranstaltung
# Das aktuelle Ereignis. Dies sollte vorsichtig verwendet werden in csh(1), wo es kein gibt
auf Rekursion prüfen. tcsh ermöglicht 10 Rekursionsstufen. (+)
! Das vorherige Ereignis (entspricht '-1')
s Das neueste Ereignis, dessen erstes Wort mit der Zeichenfolge . beginnt s
?s? Das neueste Ereignis, das die Zeichenfolge enthält s. Das zweite `?' kann sein
weggelassen, wenn unmittelbar ein Zeilenumbruch folgt.

Betrachten Sie zum Beispiel diesen Teil der Historienliste einer Person:

9 8:30 nroff -man wumpus.man
10 8:31 cp wumpus.mann wumpus.mann.alt
11 8:36 vi wumpus.man
12 8:37 diff wumpus.man.old wumpus.man

Die Befehle werden mit ihren Ereignisnummern und Zeitstempeln angezeigt. Die aktuelle Veranstaltung, die
wir haben noch nicht eingetippt, ist Ereignis 13. `!11' und `!-2' beziehen sich auf Ereignis 11. `!!' bezieht sich auf
das vorherige Ereignis, 12. `!!' kann abgekürzt werden `!' wenn darauf `:' folgt (`:' ist
nachstehend beschrieben). `!n' bezieht sich auf Ereignis 9, das mit `n' beginnt. `!?alt?' bezieht sich auch auf
Ereignis 12, das `alt' enthält. Ohne Wortbezeichner oder Modifikatoren Geschichtsverweise
Erweitern Sie einfach auf das gesamte Ereignis, also könnten wir `!cp' eingeben, um den Kopierbefehl zu wiederholen, oder
`!!|more', wenn die `diff'-Ausgabe über den oberen Bildschirmrand gescrollt ist.

Historienverweise können bei Bedarf mit geschweiften Klammern vom umgebenden Text isoliert werden.
`!vdoc' würde beispielsweise nach einem Befehl suchen, der mit `vdoc' beginnt, und in diesem Beispiel
nicht finden, aber `!{v}doc' würde eindeutig zu `vi wumpus.mandoc' erweitert werden. Selbst in
geschweifte Klammern, Verlaufsersetzungen verschachteln sich nicht.

(+) Während csh(1) erweitert beispielsweise `!3d' zu Ereignis 3 mit dem angehängten Buchstaben `d'
es tcsh erweitert es auf das letzte Ereignis beginnend mit `3d'; nur komplett numerisch
Argumente werden als Ereignisnummern behandelt. Dadurch ist es möglich, beginnende Ereignisse abzurufen
mit Zahlen. Zum Erweitern von `!3d' wie in csh(1) sag `!{3}d'.

Um Wörter aus einem Ereignis auszuwählen, können wir der Ereignisspezifikation durch ein `:' und a . folgen
Bezeichner für die gewünschten Wörter. Die Wörter einer Eingabezeile sind ab 0 nummeriert, die
das erste (normalerweise Befehl) Wort ist 0, das zweite Wort (erstes Argument) ist 1, usw. Das
grundlegende Wortbezeichner sind:

0 Das erste (Befehls-)Wort
n Die nArgument
^ Das erste Argument, äquivalent zu `1'
$ Das letzte Argument
% Das Wort, auf das ein ?s? Suche
xy Eine Reihe von Wörtern
-y Gleichwertig `0-j'
* Entspricht `^-$', gibt aber nichts zurück, wenn das Ereignis nur 1 Wort enthält
x* Gleichwertig `x-$'
x- Gleichwertig `x*', aber das letzte Wort (`$') weglassen

Ausgewählte Wörter werden durch einzelne Leerzeichen getrennt in die Befehlszeile eingefügt. Zum
Beispiel: Der Befehl `diff' im vorherigen Beispiel könnte als `diff . eingegeben worden sein
!!:1.old !!:1' (mit `:1' das erste Argument des vorherigen Ereignisses auswählen) oder `diff
!-2:2 !-2:1', um die Argumente aus dem `cp'-Befehl auszuwählen und auszutauschen. Wenn es uns egal wäre
über die Reihenfolge des `diff' hätten wir `diff !-2:1-2' oder einfach `diff !-2:*' sagen können.
Der `cp'-Befehl könnte `cp wumpus.man !#:1.old' geschrieben worden sein, wobei `#' verwendet wird, um auf . zu verweisen
die aktuelle Veranstaltung. `!n:- hurkle.man' würde die ersten beiden Wörter aus dem `nroff' wiederverwenden
Befehl, um `nroff -man hurkle.man' zu sagen.

Das `:', das die Ereignisspezifikation vom Wortbezeichner trennt, kann weggelassen werden, wenn die
Der Argumentselektor beginnt mit einem `^', `$', `*', `%' oder `-'. Zum Beispiel unser "diff"
Der Befehl könnte `diff !!^.old !!^' oder äquivalent `diff !!$.old !!$' gewesen sein. Jedoch,
wenn `!!' mit `!' abgekürzt wird, wird ein mit `-' beginnender Argumentselektor interpretiert als
eine Ereignisspezifikation.

Eine Historienreferenz kann einen Wortbezeichner, aber keine Ereignisspezifikation haben. Es dann
verweist auf den vorherigen Befehl. In Fortsetzung unseres 'diff'-Beispiels hätten wir einfach sagen können
`diff !^.old !^' oder, um die Argumente in umgekehrter Reihenfolge zu erhalten, einfach `diff !*'.

Das Wort oder die Wörter in einer Historienreferenz können bearbeitet oder "modifiziert" werden, indem Sie ihr folgen.
mit einem oder mehreren Modifikatoren, denen jeweils ein `:' vorangestellt ist:

h Entfernen Sie eine nachfolgende Pfadnamenkomponente und lassen Sie den Kopf übrig.
t Entfernen Sie alle führenden Pfadnamenkomponenten und lassen Sie das Ende übrig.
r Entfernen Sie eine Dateinamenerweiterung `.xxx' und belassen Sie den Root-Namen.
e Entfernen Sie alle außer der Nebenstelle.
u Großbuchstaben den ersten Kleinbuchstaben.
l Kleinbuchstaben den ersten Großbuchstaben.
s/l/r/ Ersatz l für r. l ist einfach ein String wie r, kein regulärer Ausdruck wie
im namensgebenden ed(1) Befehl. Als Trennzeichen in kann jedes beliebige Zeichen verwendet werden
Stelle von `/'; ein `\' kann verwendet werden, um das Trennzeichen im Inneren zu zitieren l und rdem „Vermischten Geschmack“. Seine
Zeichen `&' im r wird ersetzt durch l; `\' zitiert auch `&'. Wenn l ist leer
(``''), die l aus einer früheren Auswechslung oder die s aus einer früheren Suche oder
Ereignisnummer in der Ereignisspezifikation wird verwendet. Das nachgestellte Trennzeichen kann sein
weggelassen, wenn unmittelbar ein Zeilenumbruch folgt.
& Wiederholen Sie die vorherige Ersetzung.
g Wenden Sie den folgenden Modifikator einmal auf jedes Wort an.
a (+) Wenden Sie den folgenden Modifikator so oft wie möglich auf ein einzelnes Wort an. 'ein'
und `g' können zusammen verwendet werden, um einen Modifikator global anzuwenden. Mit dem `s'
Modifikator, nur die im ursprünglichen Wort enthaltenen Muster werden ersetzt,
keine Muster, die ein Ersetzungsergebnis enthalten.
p Drucken Sie die neue Befehlszeile, führen Sie sie jedoch nicht aus.
q Zitieren Sie die ersetzten Wörter, um weitere Ersetzungen zu vermeiden.
x Wie q, aber an Leerzeichen, Tabulatoren und Zeilenumbrüchen in Wörter umbrechen.

Modifikatoren werden nur auf das erste änderbare Wort angewendet (es sei denn, `g' wird verwendet). Es ist ein
Fehler, dass kein Wort geändert werden kann.

Der Befehl `diff' könnte beispielsweise als `diff wumpus.man.old !#^:r' geschrieben worden sein,
Verwenden Sie `:r', um `.old' aus dem ersten Argument in derselben Zeile (`!#^') zu entfernen. Wir könnten
sag `echo hallo da draußen', dann `echo !*:u' um `hallo' groß zu schreiben, `echo !*:au' um es zu sagen
laut oder `echo !*:agu', um richtig zu schreien. Wir könnten `mail -s folgen "Ich habe meine vergessen"
Passwort" rot' mit `!:s/rot/root' um die Schreibweise von `root' zu korrigieren (aber siehe Rechtschreibung
Korrektur für einen anderen Ansatz).

Für Substitutionen gibt es eine spezielle Abkürzung. `^', wenn es das erste Zeichen ist
eine Eingabezeile, entspricht `!:s^'. Daher hätten wir vielleicht `^rot^root' sagen können, um die
Rechtschreibkorrektur im vorherigen Beispiel. Dies ist die einzige Geschichtsersetzung, die
beginnt nicht explizit mit `!'.

(+) Ein csh Daher kann auf jede Historie oder Variable nur ein Modifikator angewendet werden
Erweiterung. In tcsh, es können beispielsweise mehrere verwendet werden

% mv wumpus.man /usr/man/man1/wumpus.1
% Mann !$:t:r
Mann wumpus

In csh, das Ergebnis wäre `wumpus.1:r'. Eine Substitution gefolgt von einem Doppelpunkt muss möglicherweise
mit Klammern davon isoliert werden:

> mv a.out /usr/games/wumpus
> setenv PFAD !$:h:$PFAD
Schlecht ! Modifikator: $.
> setenv PFAD !{-2$:h}:$PFAD
setenv PFAD / usr / Spiele:/Behälter:/ usr / bin:.

Der erste Versuch würde gelingen csh aber scheitert an tcshDa tcsh erwartet einen anderen
Modifikator nach dem zweiten Doppelpunkt statt `$'.

Schließlich kann auf die Historie sowohl über den Editor als auch über die Ersetzungen zugegriffen werden
gerade beschrieben. Die oben- und Geschichte, Geschichte-Suche-zurück und -nach vorne, ich suche-
Zurück und -vorw, vi-suche-zurück und -vorw, kopieren-vorheriges-Wort und letztes Wort einfügen Herausgeber
Befehle suchen nach Ereignissen in der Verlaufsliste und kopieren sie in den Eingabepuffer. Die
toggle-literal-history Editor-Befehl wechselt zwischen der erweiterten und der wörtlichen Form von
Verlaufszeilen im Eingabepuffer. Erweitern-Geschichte und expand-line Geschichte erweitern
Ersetzungen im aktuellen Wort bzw. im gesamten Eingabepuffer.

Alias Substitution
Die Shell unterhält eine Liste von Aliasnamen, die von der gesetzt, deaktiviert und gedruckt werden können alias und
Unalias Befehle. Nachdem eine Befehlszeile in einfache Befehle geparst wurde (siehe Befehle) das
Das erste Wort jedes Befehls, von links nach rechts, wird überprüft, um zu sehen, ob es einen Alias ​​hat. Wenn ja,
das erste Wort wird durch den Alias ​​ersetzt. Wenn der Alias ​​einen Verlaufsverweis enthält, wird er
erfährt Geschichte Substitution (qv) als wäre der ursprüngliche Befehl der vorherige
Eingabezeile. Wenn der Alias ​​keine History-Referenz enthält, wird die Argumentliste verlassen
unberührt.

Wenn also der Alias ​​für `ls' `ls -l' wäre, wird der Befehl `ls / usr' würde zu `ls -l . werden / usr',
die Argumentliste ist hier ungestört. Wenn der Alias ​​für `lookup' `grep !^ . wäre
/ etc / passwd' dann würde `lookup bill' zu `grep bill / etc / passwd'. Aliase können verwendet werden
Parser-Metasyntax einzuführen. Zum Beispiel `alias print 'pr \!* | lpr'' definiert a
``Befehl'' (`Drucken'), der pr(1)s seine Argumente an den Zeilendrucker.

Die Alias-Ersetzung wird wiederholt, bis das erste Wort des Befehls keinen Alias ​​hat. Wenn ein
Alias-Ersetzung ändert das erste Wort nicht (wie im vorherigen Beispiel), es ist
markiert, um eine Schleife zu verhindern. Andere Schleifen werden erkannt und verursachen einen Fehler.

Auf einige Aliasnamen verweist die Shell; sehen Spezial Aliase.

Variable Substitution
Die Shell verwaltet eine Liste von Variablen, von denen jede als Wert eine Liste von null oder mehr hat
Wörter. Die Werte von Shell-Variablen können mit dem . angezeigt und geändert werden kompensieren und ungesetzt
Befehle. Das System unterhält seine eigene Liste von ``Umgebung''-Variablen. Das können sein
angezeigt und geändert mit printenv, settenv und unsetv.

(+) Variablen können mit `set -r' (qv) schreibgeschützt gemacht werden. Schreibgeschützte Variablen sind möglicherweise nicht
modifiziert oder nicht gesetzt; Wenn Sie dies versuchen, wird ein Fehler verursacht. Einmal schreibgeschützt, a
Variable kann nicht schreibbar gemacht werden, daher sollte `set -r' mit Vorsicht verwendet werden. Umfeld
Variablen können nicht schreibgeschützt gemacht werden.

Einige Variablen werden von der Shell gesetzt oder auf sie verwiesen. Zum Beispiel die argv Variable
ist ein Bild der Argumentliste der Shell, und Wörter des Wertes dieser Variablen werden referenziert
auf besondere Weise zu Einige der Variablen, auf die die Shell verweist, sind Umschalter; die Muschel
kümmert sich nicht um ihren Wert, nur ob sie gesetzt sind oder nicht. Zum Beispiel die
ausführlich Variable ist ein Umschalter, der bewirkt, dass die Befehlseingabe als Echo ausgegeben wird. Die -v Befehlszeile
Option setzt diese Variable. Spezial Schale Variablen listet alle Variablen auf, auf die verwiesen wird
an der Schale.

Andere Operationen behandeln Variablen numerisch. Der `@'-Befehl erlaubt numerische
Berechnungen durchzuführen und das Ergebnis einer Variablen zuzuordnen. Variablenwerte sind,
jedoch immer als (null oder mehr) Zeichenfolgen dargestellt. Für numerische Zwecke
Operationen wird die Nullzeichenfolge als Null betrachtet, und das zweite und die folgenden Wörter
von Mehrwortwerten werden ignoriert.

Nachdem die Eingabezeile mit einem Alias ​​versehen und geparst wurde und bevor jeder Befehl ausgeführt wird, Variable
Die Ersetzung erfolgt mit `$'-Zeichen. Diese Ausdehnung kann verhindert werden durch
vor dem `$' ein `\' außer innerhalb von `''s, wo es immer auftritt, und innerhalb von `''s
wo es niemals tritt ein. Strings in Anführungszeichen ``' werden später interpretiert (siehe Befehl
Substitution unten), sodass die `$'-Ersetzung dort, wenn überhaupt, erst später erfolgt. EIN
`$' wird unverändert übergeben, wenn ein Leerzeichen, ein Tabulator oder ein Zeilenende folgen.

Eingabe-/Ausgabe-Umleitungen werden vor der Variablenerweiterung erkannt und sind variabel
separat ausgebaut. Andernfalls werden der Befehlsname und die gesamte Argumentliste erweitert
zusammen. Damit ist es möglich, das erste (Befehls-)Wort (bis zu diesem Punkt) zu erzeugen
mehr als ein Wort, von denen das erste der Befehlsname wird und der Rest
Argumente werden.

Sofern nicht in `"' eingeschlossen oder der Modifikator `:q' gegeben ist, können die Ergebnisse der Variablensubstitution
schließlich werden Befehl und Dateiname ersetzt. Innerhalb von `"' eine Variable, deren Wert
besteht aus mehreren Wörtern erweitert sich zu einem (Teil eines) einzelnen Wortes, mit den Wörtern des
Wert der Variablen durch Leerzeichen getrennt. Wenn der Modifikator `:q' auf eine Substitution angewendet wird
die Variable wird auf mehrere Wörter erweitert, wobei jedes Wort durch ein Leerzeichen getrennt und in Anführungszeichen gesetzt wird
um eine spätere Befehls- oder Dateinamensersetzung zu verhindern.

Die folgenden Metasequenzen werden bereitgestellt, um Variablenwerte in die Shell einzuführen
Eingang. Sofern nicht anders angegeben, ist es ein Fehler, auf eine Variable zu verweisen, die nicht festgelegt ist.

$Name
${Name} Ersetzt die Wörter des Wertes der Variablen Name, jeweils durch ein Leerzeichen getrennt.
Hosenträger isolieren Name von folgenden Charakteren, die sonst Teil von . wären
es. Shell-Variablen haben Namen bestehend aus Buchstaben und Ziffern, die mit a . beginnen
Buchstabe. Der Unterstrich wird als Buchstabe betrachtet. Wenn Name ist keine schale
Variable, aber in der Umgebung gesetzt ist, wird dieser Wert zurückgegeben (aber einige von
die anderen unten aufgeführten Formulare stehen in diesem Fall nicht zur Verfügung).
$Name[Wähler]
${Name[Wähler]}
Ersetzt nur die ausgewählten Wörter aus dem Wert von Namedem „Vermischten Geschmack“. Seine Wähler is
einer '$'-Ersetzung unterzogen und kann aus einer einzelnen Zahl oder zwei Zahlen bestehen
durch ein `-' getrennt. Das erste Wort des Wertes einer Variablen ist mit '1' nummeriert. Wenn die
Wird die erste Zahl eines Bereichs weggelassen, ist sie standardmäßig `1'. Wenn das letzte Mitglied von a
Bereich wird weggelassen, es ist standardmäßig `$#Name'. Das Wähler `*' wählt alle Wörter aus. Es
ist kein Fehler, wenn ein Bereich leer ist, wenn das zweite Argument weggelassen wird oder in
range.
$0 Ersetzt den Namen der Datei, aus der die Befehlseingabe gelesen wird. Ein Fehler
tritt auf, wenn der Name nicht bekannt ist.
$Anzahl
${Anzahl}
Äquivalent zu `$argv[Anzahl]'.
$* Entspricht `$argv', was `$argv[*]' entspricht.

Die `:'-Modifikatoren, die unter . beschrieben sind Geschichte Substitution, außer `:p', kann angewendet werden auf
die Ersetzungen oben. Es können mehrere verwendet werden. (+) Zur Isolierung sind möglicherweise Hosenträger erforderlich
eine variable Ersetzung aus einem wörtlichen Doppelpunkt genauso wie bei Geschichte Substitution (siehe); irgendein
Modifikatoren müssen innerhalb der geschweiften Klammern erscheinen.

Die folgenden Ersetzungen können nicht mit den Modifikatoren `:' geändert werden.

$?Name
${?Name}
Ersetzt die Zeichenfolge `1' wenn Name gesetzt ist, `0' wenn nicht.
$?0 Ersetzt `1', wenn der aktuelle Eingabedateiname bekannt ist, `0', wenn er nicht bekannt ist. Immer
`0' in interaktiven Shells.
$#Name
${#Name}
Ersetzt die Anzahl der Wörter in Name.
$# Entspricht `$#argv'. (+)
$%Name
${%Name}
Ersetzt die Anzahl der Zeichen in Name. (+)
$%Anzahl
${%Anzahl}
Ersetzt die Anzahl der Zeichen in $argv[Anzahl]. (+)
$? Entspricht `$status'. (+)
$$ Ersetzt die (dezimale) Prozessnummer der (übergeordneten) Shell.
$! Ersetzt die (dezimale) Prozessnummer des zuletzt gestarteten Hintergrundprozesses von
diese Schale. (+)
$_ Ersetzt die Befehlszeile des zuletzt ausgeführten Befehls. (+)
$< Ersetzt eine Zeile aus der Standardeingabe, ohne weitere Interpretation
danach. Es kann verwendet werden, um in einem Shell-Skript von der Tastatur zu lesen. (+)
Während csh zitiert immer $<, als wäre es äquivalent zu `$<:q', tcsh nicht.
Außerdem, wenn tcsh wartet auf die Eingabe einer Zeile, der Benutzer kann ein eingeben
Interrupt um die Sequenz zu unterbrechen, in die die Zeile ersetzt werden soll, aber
csh lässt dies nicht zu.

Der Editor-Befehl Expand-Variablen, normalerweise an `^X-$' gebunden, kann verwendet werden um
einzelne Variablen interaktiv erweitern.

Befehl, Dateinamen und Verzeichnis Stapel Substitution
Die verbleibenden Ersetzungen werden selektiv auf die Argumente der eingebauten Befehle angewendet.
Das bedeutet, dass Teile von Ausdrücken, die nicht ausgewertet werden, diesen nicht unterworfen werden
Erweiterungen. Für Befehle, die nicht Shell-intern sind, lautet der Befehlsname
getrennt von der Argumentliste ersetzt. Dies geschieht sehr spät, nach Eingabe-Ausgabe
Umleitung wird durchgeführt, und zwar in einem untergeordneten Element der Haupt-Shell.

Befehl Substitution
Die Befehlsersetzung wird durch einen in ``' eingeschlossenen Befehl angezeigt. Die Ausgabe von solchen wie
Der Befehl wird bei Leerzeichen, Tabulatoren und Zeilenumbrüchen in einzelne Wörter unterteilt, und Nullwörter sind
verworfen. Die Ausgabe ist variabel und wird durch den Befehl ersetzt und an die Stelle des gesetzt
ursprüngliche Saite.

Befehlsersetzungen in doppelten Anführungszeichen (`"') behalten Leerzeichen und Tabulatoren bei; nur Zeilenumbrüche
neue Wörter erzwingen. Der einzelne letzte Zeilenumbruch erzwingt in keinem Fall ein neues Wort. es ist
somit ist es möglich, dass eine Befehlsersetzung nur einen Teil eines Wortes ergibt, selbst wenn der Befehl
gibt eine komplette Zeile aus.

Standardmäßig ersetzt die Shell seit Version 6.12 alle Zeilenumbrüche und Wagenrückläufe
Zeichen im Befehl durch Leerzeichen. Wird diese durch Unscharfschaltung ausgeschaltet csubstnonl,
Zeilenumbrüche trennen Befehle wie üblich.

Dateiname Substitution
Wenn ein Wort eines der Zeichen `*', `?', `[' oder `{' enthält oder mit dem Zeichen . beginnt
`~' ist ein Kandidat für die Dateinamenersetzung, auch bekannt als ``globbing''. Dieses Wort ist
dann als Muster (``Glob-Muster'') betrachtet und durch ein alphabetisch sortiertes ersetzt
Liste von Dateinamen, die dem Muster entsprechen.

In übereinstimmenden Dateinamen wird das Zeichen `.' am Anfang eines Dateinamens oder sofort
nach einem `/', sowie das Zeichen `/' müssen explizit abgeglichen werden (es sei denn, entweder
globdot or Kugelstern oder beide sind gesetzt(+)). Das Zeichen `*' entspricht einer beliebigen Zeichenfolge von
Zeichen, einschließlich der Nullzeichenfolge. Das Zeichen `?' entspricht jedem einzelnen Zeichen.
Die Sequenz `[...]' entspricht einem der eingeschlossenen Zeichen. Innerhalb von `[...]' ein Paar
der durch `-' getrennten Zeichen stimmt lexikalisch mit jedem Zeichen zwischen den beiden überein.

(+) Einige Glob-Muster können negiert werden: Die Sequenz `[^...]' passt zu jedem einzelnen Zeichen
nicht durch die Zeichen und/oder Zeichenbereiche in den geschweiften Klammern angegeben.

Ein ganzes Glob-Muster kann auch mit `^' negiert werden:

> Echo *
Knall Crash Crunch Autsch
> Echo ^cr*
knall autsch

Glob-Muster, die kein `?', `*' oder `[]' verwenden oder die `{}' oder `~' (unten) verwenden, sind es nicht
richtig negiert.

Die Metanotation `a{b,c,d}e' ist eine Abkürzung für `abe ace ade'. Die Reihenfolge von links nach rechts ist
beibehalten: `/usr/source/s1/{oldls,ls}.c' wird zu `/usr/source/s1/oldls.c . erweitert
/usr/source/s1/ls.c'. Die Ergebnisse der Spiele werden separat auf einer niedrigen Ebene nach sortiert
Behalten Sie diese Reihenfolge bei: `../{memo,*box}' kann zu `../memo ../box ../mbox' erweitert werden. (Notiz
dass `Memo' nicht mit den Ergebnissen der passenden `*box' sortiert wurde.) Es ist kein Fehler, wenn
Dieses Konstrukt wird auf Dateien erweitert, die nicht existieren, aber es ist möglich, einen Fehler zu erhalten
von einem Befehl, an den die erweiterte Liste übergeben wird. Dieses Konstrukt kann verschachtelt sein. Als ein
Sonderfall werden die Wörter `{', `}' und `{}' ungestört übergeben.

Das Zeichen `~' am Anfang eines Dateinamens verweist auf Heimatverzeichnisse. Stehen
allein, dh `~', wird zum Home-Verzeichnis des Aufrufers erweitert, wie im Wert von . widergespiegelt
die Startseite Shell-Variable. Wenn ein Name folgt, der aus Buchstaben, Ziffern und „-“ besteht
Zeichen sucht die Shell nach einem Benutzer mit diesem Namen und ersetzt dessen Heimat
Verzeichnis; daher könnte `~ken' zu `/usr/ken' und `~ken/chmach' zu `/usr/ken/chmach' erweitert werden.
Wenn auf das Zeichen `~' ein anderes Zeichen als ein Buchstabe oder `/' folgt oder erscheint
an anderer Stelle als am Wortanfang bleibt es ungestört. Ein Befehl wie `setenv
MANPATH /usr/man:/ usr / local / man:~/lib/man' macht daher kein Home-Verzeichnis
Ersatz, wie man hoffen könnte.

Es ist ein Fehler für ein Glob-Muster, das `*', `?', `[' oder `~' enthält, mit oder ohne `^',
keine Dateien abgleichen. Es darf jedoch nur ein Muster in einer Liste von Globmustern mit a übereinstimmen
Datei (so dass zB `rm *.a *.c *.o' nur dann fehlschlagen würde, wenn keine Dateien in der
aktuelles Verzeichnis mit der Endung `.a', `.c' oder `.o') und wenn die Nichtübereinstimmung Shell-Variable ist
Setze ein Muster (oder eine Liste von Mustern), das mit nichts übereinstimmt, wird nicht unverändert gelassen, anstatt
einen Fehler verursacht.

Die Kugelstern Die Shell-Variable kann so eingestellt werden, dass sie `**' oder `***' als Datei-Glob-Muster zulässt, das
stimmt mit einer beliebigen Zeichenfolge überein, einschließlich `/' und durchläuft rekursiv alle vorhandenen Sub-
Verzeichnisse. Zum Beispiel listet `ls **.c' alle .c-Dateien im aktuellen Verzeichnis auf
Baum. Wenn es allein verwendet wird, wird es mit null oder mehr Unterverzeichnissen übereinstimmen (z. B. `ls
/usr/include/**/time.h' listet jede Datei namens `time.h' im / usr / include Verzeichnis
Baum; `l /usr/include/**time.h' stimmt mit jeder Datei im / usr / include Verzeichnisbaum
endet auf `time.h'; und `l /usr/include/**time**.h' entspricht jeder .h-Datei mit 'time'
entweder in einem Unterverzeichnisnamen oder im Dateinamen selbst). Um Probleme mit zu vermeiden
Rekursion wird das `**'-Glob-Muster nicht in einen symbolischen Link mit a . absteigen
Verzeichnis. Um dies zu überschreiben, verwenden Sie `***' (+)

Die noglob Shell-Variable kann gesetzt werden, um die Substitution von Dateinamen zu verhindern, und die expand-globus
Editor-Befehl, der normalerweise an `^X-*' gebunden ist, kann verwendet werden, um einzelne interaktiv zu erweitern
Dateinamen-Ersetzungen.

Verzeichnis Stapel Substitution (+)
Der Verzeichnisstapel ist eine von Null nummerierte Liste von Verzeichnissen, die von den pushd, popd
und dirs eingebaute Befehle (siehe). dirs kann drucken, in einer Datei speichern, wiederherstellen und löschen
Verzeichnisstapel jederzeit und die Retter und dirsfile Shell-Variablen können auf gesetzt werden
Speichern Sie den Verzeichnisstapel automatisch beim Abmelden und stellen Sie ihn beim Anmelden wieder her. Die Dirstack
Die Shell-Variable kann untersucht werden, um den Verzeichnisstapel zu sehen, und kann auf beliebige gesetzt werden
Verzeichnisse in den Verzeichnisstapel.

Das Zeichen `=' gefolgt von einer oder mehreren Ziffern wird zu einem Eintrag im Verzeichnis
Stapel. Der Sonderfall `=-' erweitert das letzte Verzeichnis im Stack. Zum Beispiel,

> dirs -v
0 / usr / bin
1 /usr/spool/uucp
2 /usr/accts/sys
> Echo =1
/usr/spool/uucp
> echo =0/kalender
/usr/bin/calendar
> Echo =-
/usr/accts/sys

Die noglob und Nichtübereinstimmung Shell-Variablen und die expand-globus Editor-Befehl anwenden auf
Verzeichnisstapel sowie Dateinamenersetzungen.

Andere Substitutionen (+)
Es gibt mehrere weitere Transformationen mit Dateinamen, die nicht eng mit dem
oben, aber der Vollständigkeit halber hier erwähnt. Jedes Dateiname kann zu einem vollständigen Pfad erweitert werden
wenn das Symlinks Variable (qv) ist auf `erweitern' gesetzt. Zitieren verhindert diese Expansion,
und der normalisieren-Pfad Editor-Befehl tut dies bei Bedarf. Die normalisieren-Befehl Herausgeber
Befehl erweitert Befehle in PATH bei Bedarf in vollständige Pfade. Schließlich, cd und pushd
interpretiere `-' als das alte Arbeitsverzeichnis (entspricht der Shell-Variablen ach). Dies
ist überhaupt kein Ersatz, sondern eine Abkürzung, die nur von diesen Befehlen erkannt wird.
Dennoch kann auch dies durch Zitieren verhindert werden.

Befehle
Die nächsten drei Abschnitte beschreiben, wie die Shell Befehle ausführt und mit ihren
Ein- und Ausgabe.

Einfacher Befehle, Pipelines und Sequenzen
Ein einfacher Befehl ist eine Folge von Wörtern, von denen das erste den Befehl angibt, zu sein
hingerichtet. Eine Reihe einfacher Befehle, verbunden mit `|' Zeichen bildet eine Pipeline. Die
Der Ausgang jedes Befehls in einer Pipeline wird mit dem Eingang des nächsten verbunden.

Einfache Befehle und Pipelines können mit `;' zu Sequenzen verbunden werden und werden ausgeführt
der Reihe nach. Befehle und Pipelines können auch mit `||' zu Sequenzen verbunden werden. oder `&&',
anzeigt, wie in der Sprache C, dass die zweite nur ausgeführt werden soll, wenn die erste
scheitert bzw. erfolgreich ist.

Ein einfacher Befehl, eine Pipeline oder eine Sequenz kann in Klammern `()' gesetzt werden, um a . zu bilden
einfacher Befehl, der wiederum Bestandteil einer Pipeline oder Sequenz sein kann. Ein Kommando,
Pipeline oder Sequenz kann ausgeführt werden, ohne auf deren Beendigung zu warten, indem man ihr folgt
mit einem `&'.

builtin und nicht eingebaut Befehl Ausführung
Eingebaute Befehle werden innerhalb der Shell ausgeführt. Wenn eine Komponente einer Pipeline außer der
last ist ein eingebauter Befehl, die Pipeline wird in einer Subshell ausgeführt.

Eingeklammerte Befehle werden immer in einer Subshell ausgeführt.

(CD; pwd); pwd

druckt also die Startseite Verzeichnis, so dass Sie dort bleiben, wo Sie waren (drucken Sie dies nach dem Zuhause aus
Verzeichnis), während

CD; pwd

lässt dich im Startseite Verzeichnis. Eingeklammerte Befehle werden am häufigsten verwendet, um zu verhindern, dass
cd die aktuelle Shell zu beeinflussen.

Wenn sich herausstellt, dass ein auszuführender Befehl kein eingebauter Befehl ist, versucht die Shell,
führe den Befehl über . aus ausführen(2). Jedes Wort in der Variablen Weg benennt ein Verzeichnis in
die die Shell nach dem Befehl sucht. Wenn die Schale nicht gegeben ist a -f Option, die
Die Shell hasht die Namen in diesen Verzeichnissen in eine interne Tabelle, damit sie versucht,
ausführen(2) nur in einem Verzeichnis, in dem die Möglichkeit besteht, dass sich der Befehl dort befindet.
Dies beschleunigt die Befehlslokalisierung erheblich, wenn eine große Anzahl von Verzeichnissen im
Suchpfad. Dieser Hashing-Mechanismus wird nicht verwendet:

1. Wenn Hashing explizit deaktiviert wird über aufheben.

2. Wenn die Schale a . gegeben wurde -f Argument.

3. Für jede Verzeichniskomponente von Weg die nicht mit einem `/' beginnt.

4. Wenn der Befehl ein `/' enthält.

In den obigen vier Fällen verkettet die Schale jede Komponente des Pfadvektors mit der
gegebenen Befehlsnamen, um einen Pfadnamen einer Datei zu bilden, die dann versucht wird, sie auszuführen. Wenn
Ausführung erfolgreich ist, wird die Suche abgebrochen.

Wenn die Datei Ausführungsberechtigungen hat, aber keine ausführbare Datei für das System ist (dh sie ist
weder eine ausführbare Binärdatei noch ein Skript, das seinen Interpreter angibt), dann ist es
Es wird angenommen, dass es sich um eine Datei handelt, die Shell-Befehle enthält, und eine neue Shell wird erzeugt, um sie zu lesen. Die
Schale ein spezieller Alias ​​kann gesetzt werden, um einen anderen Interpreter als die Shell selbst anzugeben.

Auf Systemen, die das `#!' Skriptinterpreter-Konvention die Shell kann sein
kompiliert, um es zu emulieren; sieh das Version Shell-Variable. Wenn ja, überprüft die Shell die erste
Zeile der Datei, um zu sehen, ob sie die Form `#!Dolmetscher arg ...'. Wenn ja, die Schale
beginnt Dolmetscher mit dem gegebenen args und fügt ihm die Datei über die Standardeingabe zu.

Eingabe / Ausgabe-
Die Standardeingabe und Standardausgabe eines Befehls kann wie folgt umgeleitet werden
Syntax:

< Name Öffnen Sie die Datei Name (das ist die erste Variable, Befehl und Dateiname erweitert) als die
Standardeingabe.
<< Wort Lesen Sie die Shell-Eingabe bis zu einer Zeile, die mit identisch ist Wort. Wort ist nicht
einer Variablen-, Dateinamen- oder Befehlssubstitution unterzogen, und jede Eingabezeile ist
im Vergleich zu Wort bevor in dieser Eingabezeile Ersetzungen vorgenommen werden. Es sei denn, a
Anführungszeichen `\', `"', `' oder ``' erscheinen in Wort Variablen- und Befehlsersetzung ist
in den dazwischen liegenden Zeilen ausgeführt, sodass `\' `$', `\' und ``' in Anführungszeichen setzen kann.
Bei Befehlen, die ersetzt werden, bleiben alle Leerzeichen, Tabulatoren und Zeilenumbrüche erhalten.
mit Ausnahme des letzten Zeilenumbruchs, der weggelassen wird. Der resultierende Text wird in ein
anonyme temporäre Datei, die dem Befehl als Standardeingabe übergeben wird.
> Name
>! Name
>& Name
>&! Name
Die Datei Name wird als Standardausgabe verwendet. Wenn die Datei nicht existiert, dann ist sie
erstellt; Wenn die Datei vorhanden ist, wird sie abgeschnitten, wobei ihr vorheriger Inhalt verloren geht.

Wenn die Shell-Variable noclobber gesetzt ist, dann darf die Datei nicht existieren oder a
Zeichen spezielle Datei (zB ein Terminal oder `/dev/null') oder ein Fehler resultiert.
Dies trägt dazu bei, eine versehentliche Zerstörung von Dateien zu verhindern. In diesem Fall wird das `!' Formen
kann verwendet werden, um diese Prüfung zu unterdrücken.

Die Formulare mit `&' leiten die Diagnoseausgabe in die angegebene Datei als
sowie die Standardausgabe. Name wird wie die Eingabe `<' erweitert
Dateinamen sind.
>> Name
>>> Name
>>! Name
>>&! Name
Wie `>', aber hängt die Ausgabe an das Ende von Name. Wenn die Shell-Variable noclobber
gesetzt ist, dann ist es ein Fehler für die Datei nicht existieren, es sei denn, einer der `!' Formen
gegeben ist.

Ein Befehl erhält die Umgebung, in der die Shell aufgerufen wurde, so, wie sie durch den
Eingabe-Ausgabe-Parameter und das Vorhandensein des Befehls in einer Pipeline. Also im Gegensatz zu einigen
vorherige Shells, Befehle, die aus einer Datei mit Shell-Befehlen ausgeführt werden, haben keinen Zugriff auf den Text von
die Befehle standardmäßig; Stattdessen erhalten sie die ursprüngliche Standardeingabe der Shell.
Der `<<'-Mechanismus sollte verwendet werden, um Inline-Daten darzustellen. Dies erlaubt Shell-Befehle
Skripte als Komponenten von Pipelines zu fungieren und erlaubt der Shell, das Lesen ihrer
Eingang. Beachten Sie, dass die Standard-Standardeingabe für eine getrennte Befehlsausführung ist nicht die leere
Datei / dev / null, sondern die ursprüngliche Standardeingabe der Shell. Wenn dies ein Terminal ist und
Wenn der Prozess versucht, vom Terminal zu lesen, wird der Prozess blockiert und die
Benutzer wird benachrichtigt (siehe Jobs).

Die Diagnoseausgabe kann mit der Standardausgabe durch eine Pipe geleitet werden. Nutzen Sie einfach die
bilden Sie `|&' statt nur `|'.

Die Shell kann derzeit die Diagnoseausgabe nicht umleiten, ohne auch den Standard umzuleiten
Ausgabe, aber `(Befehl > Ausgabedatei) >& Fehlerdatei“ ist oft eine akzeptable Problemumgehung.
Entweder Ausgabedatei or Fehlerdatei kann `/dev/tty' sein, um die Ausgabe an das Terminal zu senden.

Eigenschaften
Nachdem wir beschrieben haben, wie die Shell Befehlszeilen akzeptiert, analysiert und ausführt, wenden wir uns nun zu
eine Vielzahl seiner nützlichen Funktionen.

Kontrollieren Fluss
Die Shell enthält eine Reihe von Befehlen, mit denen der Kontrollfluss reguliert werden kann
in Befehlsdateien (Shell-Skripte) und (in begrenzter, aber nützlicher Weise) aus der Terminaleingabe.
Diese Befehle arbeiten alle, indem sie die Shell zwingen, ihre Eingaben erneut zu lesen oder zu überspringen
die Implementierung, schränken Sie die Platzierung einiger Befehle ein.

Die foreach, wechseln und und gleichzeitig die Aussagen sowie die wenn-dann-sonst Form der if
-Anweisung erfordern, dass die wichtigsten Schlüsselwörter in einem einzigen einfachen Befehl auf einer Eingabe erscheinen
Linie wie unten gezeigt.

Wenn die Eingabe der Shell nicht durchsucht werden kann, puffert die Shell die Eingabe, wenn eine Schleife ausgeführt wird
read und führt Suchvorgänge in diesem internen Puffer durch, um das erneute Lesen zu erreichen, das durch die
Schleife. (Sofern dies dies erlaubt, rückwärts gotos wird auf nicht suchbarem Erfolg haben
Eingänge.)

Ausdrücke
Die if, und gleichzeitig die und wunsch eingebaute Befehle verwenden Ausdrücke mit einer gemeinsamen Syntax. Der
Ausdrücke können jeden der Operatoren enthalten, die in den nächsten drei Abschnitten beschrieben werden. Notiz
, dass die @ Der eingebaute Befehl (qv) hat seine eigene separate Syntax.

Logisch, arithmetisch und Vergleich durch
Diese Operatoren sind denen von C ähnlich und haben die gleiche Priorität. Sie beinhalten

|| && | ^ & == != =~ !~ <= >=
< > << >> + - * / % ! ~ ( )

Hier steigt der Vorrang nach rechts, `==' `!=' `=~' und `!~', `<=' `>=' `<' und
`>', `<<' und `>>', `+' und `-', `*' `/' und `%' sind in Gruppen auf derselben Ebene. Der
`==' `!=' `=~' und `!~' Operatoren vergleichen ihre Argumente als Strings; alle anderen arbeiten
auf Zahlen. Die Operatoren `=~' und `!~' sind wie `!=' und `==', außer dass die rechte Hand
Seite ist ein Glob-Muster (siehe Dateiname Substitution) gegen den der linke Operand ist
abgestimmt. Dies reduziert die Notwendigkeit für die Verwendung der wechseln eingebauter Befehl in Shell-Skripten
wenn alles, was wirklich benötigt wird, ein Mustervergleich ist.

Null oder fehlende Argumente werden als `0' betrachtet. Die Ergebnisse aller Ausdrücke sind Zeichenfolgen,
die Dezimalzahlen darstellen. Es ist wichtig zu beachten, dass keine zwei Komponenten von an
Ausdruck kann im selben Wort vorkommen; außer wenn neben Komponenten von Ausdrücken
die für den Parser syntaktisch bedeutsam sind (`&' `|' `<' `>' `(' `)') sollten sie sein
umgeben von Räumen.

Befehl wunsch Status
Befehle können in Ausdrücken ausgeführt und ihr Exit-Status durch Einschließen zurückgegeben werden
in geschweiften Klammern (`{}'). Denken Sie daran, dass die Klammern von den Wörtern des getrennt werden sollten
Befehl durch Leerzeichen. Befehlsausführungen sind erfolgreich und geben true zurück, dh `1', wenn der Befehl
endet mit Status 0, andernfalls schlagen sie fehl und geben false zurück, dh `0'. Wenn genauer
Statusinformationen benötigt werden, sollte der Befehl außerhalb eines
Ausdruck und die Status Shell-Variable untersucht.

Reichen Sie das Anfrage durch
Einige dieser Operatoren führen Wahr/Falsch-Tests für Dateien und zugehörige Objekte durch. Sie sind
der Form -op Datei, Wobei op eines von

r Lesezugriff
w Schreibzugriff
x Zugriff ausführen
X Ausführbar im Pfad oder in der Shell eingebaut, zB `-X ls' und `-X ls-F' sind im Allgemeinen
stimmt, aber `-X /bin/ls' ist nicht (+)
e Existenz
o Impressum
z Nullgröße
s Größe ungleich null (+)
f Einfache Datei
d Verzeichnis
l Symbolischer Link (+) *
b Spezialdatei blockieren (+)
c Zeichen-Spezialdatei (+)
p Benanntes Rohr (fifo) (+) *
S Socket-Spezialdatei (+) *
u Set-User-ID-Bit ist gesetzt (+)
g Set-Group-ID-Bit ist gesetzt (+)
k Sticky-Bit ist gesetzt (+)
t Datei (muss eine Ziffer sein) ist ein offener Dateideskriptor für ein Endgerät (+)
R Wurde migriert (nur konvex) (+)
L Wendet nachfolgende Operatoren in einem Test mit mehreren Operatoren eher auf einen symbolischen Link an
als zu der Datei, auf die der Link zeigt (+) *

Datei ist Befehl und Dateiname erweitert und dann getestet, um zu sehen, ob es die angegebenen hat
Beziehung zum echten Benutzer. Wenn Datei nicht existiert oder nicht zugänglich ist oder für die
Operatoren, die mit `*' gekennzeichnet sind, wenn der angegebene Dateityp auf dem aktuellen . nicht existiert
System, dann geben alle Anfragen false zurück, dh `0'.

Diese Operatoren können der Kürze halber kombiniert werden: `-xy Datei' ist äquivalent zu '-x Datei &&
-y Datei'. (+) Zum Beispiel ist `-fx' wahr (gibt `1' zurück) für einfache ausführbare Dateien, aber
nicht für Verzeichnisse.

L kann in einem Test mit mehreren Operatoren verwendet werden, um nachfolgende Operatoren auf einen symbolischen Link anzuwenden
und nicht auf die Datei, auf die der Link verweist. Zum Beispiel gilt `-lLo' für Links
im Besitz des aufrufenden Benutzers. Lr, Lw und Lx sind immer wahr für Links und falsch für nicht-
Links. L hat eine andere Bedeutung, wenn es der letzte Operator in einem Mehrfachoperator ist
Prüfung; siehe unten.

Es ist möglich, aber nicht sinnvoll und manchmal irreführend, Operatoren zu kombinieren, die erwarten
Datei eine Datei mit Operatoren sein, die dies nicht tun (z. X und t). Folge L mit einem nicht-
file-Operator kann zu besonders merkwürdigen Ergebnissen führen.

Andere Operatoren geben andere Informationen zurück, dh nicht nur `0' oder `1'. (+) Sie haben die
gleiches Format wie zuvor; op kann einer von sein

A Letzte Dateizugriffszeit, als Anzahl der Sekunden seit der Epoche
A: Like A, jedoch im Zeitstempelformat, z. B. `Fr 14. Mai 16:36:10 1993'
M Zeitpunkt der letzten Dateiänderung
M: Like M, aber im Zeitstempelformat
C Letzte Inode-Änderungszeit
C: Like C, aber im Zeitstempelformat
D Gerätenummer
I Inode-Nummer
F Zusammengesetzt fDateikennung, in der Form Gerät:Inode
L Der Name der Datei, auf die durch einen symbolischen Link verwiesen wird
N Anzahl (harter) Links
P Berechtigungen, oktal, ohne führende Null
P: Like P, mit führender Null
PModus Äquivalent zu `-P Datei & Modus', zB `-P22 Datei' gibt '22' zurück, wenn Datei is
beschreibbar von Gruppe und anderen, `20' wenn nur von Gruppe und `0' wenn von keinem
PModus: Like PModus, mit führender Null
U Numerische Benutzer-ID
U: Benutzername oder die numerische Benutzer-ID, wenn der Benutzername unbekannt ist
G Numerische Gruppen-ID
G: Gruppenname oder die numerische Gruppen-ID, wenn der Gruppenname unbekannt ist
Z Größe, in Byte

Nur einer dieser Operatoren darf in einem Test mit mehreren Operatoren erscheinen, und es muss der . sein
zuletzt. Beachten Sie, dass L hat eine andere Bedeutung am Ende und an anderer Stelle in einem Mehrfach-
Bedienertest. Da `0' für viele dieser Operatoren ein gültiger Rückgabewert ist, tun sie dies
`0' nicht zurückgeben, wenn sie fehlschlagen: die meisten geben `-1' zurück, und F gibt `:' zurück.

Wenn die Shell mit definiertem POSIX kompiliert ist (siehe die Version Shell-Variable), das Ergebnis
einer Dateiabfrage basiert auf den Berechtigungsbits der Datei und nicht auf dem Ergebnis der
Zugang(2) Systemaufruf. Testet man beispielsweise eine Datei mit -w wessen Berechtigungen würden
normalerweise das Schreiben zulassen, das sich jedoch auf einem Dateisystem befindet, das schreibgeschützt eingehängt ist, wird der Test
in einer POSIX-Shell erfolgreich, aber in einer Nicht-POSIX-Shell fehlschlagen.

Dateiabfrageoperatoren können auch mit dem Dateitest eingebauter Befehl (qv) (+).

Jobs
Die Shell assoziiert a Job mit jeder Pipeline. Es führt eine Tabelle der aktuellen Jobs, gedruckt
von dem Jobs & Karriere Befehl und weist ihnen kleine ganze Zahlen zu. Wenn ein Job gestartet wird
asynchron mit `&' gibt die Shell eine Zeile aus, die wie folgt aussieht

[1] 1234

zeigt an, dass der asynchron gestartete Job Job Nummer 1 war und eine hatte
(Top-Level-)Prozess, dessen Prozess-ID 1234 war.

Wenn Sie einen Job ausführen und etwas anderes tun möchten, können Sie die Suspend-Taste drücken
(normalerweise `^Z'), was ein STOP-Signal an den aktuellen Job sendet. Die Schale wird dann
Geben Sie normalerweise an, dass der Auftrag `Angehalten' wurde, und drucken Sie eine weitere Eingabeaufforderung. Wenn die
Listenjobs Shell-Variable gesetzt ist, werden alle Jobs wie die Jobs & Karriere eingebauter Befehl; wenn
es auf `long' gesetzt ist, wird die Auflistung im langen Format sein, wie `jobs -l'. Du kannst dann
den Status des ausgesetzten Jobs manipulieren. Sie können es in den ``Hintergrund'' mit dem
bg Befehl oder führen Sie einige andere Befehle aus und bringen Sie den Job schließlich wieder in den
``Vordergrund'' mit fg. (Siehe auch die run-fg-editor Editor-Befehl.) Ein `^Z' wird wirksam
sofort und ist wie ein Interrupt, da anstehende Ausgaben und ungelesene Eingaben verworfen werden
wenn es getippt wird. Der warten Der eingebaute Befehl lässt die Shell auf den gesamten Hintergrund warten
Aufträge abzuschließen.

Die Taste `^]' sendet ein verzögertes Suspend-Signal, das erst a . ein STOP-Signal erzeugt
Programm versucht, besuch(2) es, zum aktuellen Job. Dies kann sinnvollerweise vorausgetippt werden, wenn
Sie haben einige Befehle für einen Job vorbereitet, die Sie stoppen möchten, nachdem er sie gelesen hat.
Die Taste `^Y' führt diese Funktion in csh(1); In tcsh, `^Y' ist ein Bearbeitungsbefehl. (+)

Ein im Hintergrund ausgeführter Job stoppt, wenn er versucht, vom Terminal zu lesen. Hintergrund
Jobs dürfen normalerweise eine Ausgabe erzeugen, dies kann jedoch deaktiviert werden, indem die
Befehl `stty tostop'. Wenn Sie diese tty-Option setzen, werden Hintergrundjobs beendet, wenn
sie versuchen, Ausgaben zu erzeugen, wie sie es tun, wenn sie versuchen, Eingaben zu lesen.

Es gibt mehrere Möglichkeiten, auf Jobs in der Shell zu verweisen. Das Zeichen `%' leitet einen Job ein
Name. Wenn Sie auf Jobnummer 1 verweisen möchten, können Sie ihn als `%1' benennen. Nur einen Job benennen
bringt es in den Vordergrund; daher ist `%1' ein Synonym für `fg %1' und bringt Job 1 zurück in
der Vordergrund. In ähnlicher Weise setzt das Sagen von `%1 &' Job 1 im Hintergrund fort, genau wie `bg
%1'. Ein Job kann auch durch ein eindeutiges Präfix des eingegebenen Strings benannt werden, um ihn zu starten:
`%ex' würde normalerweise einen ausgesetzten neu starten ex(1) Job, wenn es nur einen ausgesetzten Job gäbe
deren Name mit der Zeichenfolge `ex' begann. Es ist auch möglich, `%?Schnur' um a zu spezifizieren
Job, dessen Text enthält Schnur, wenn es nur einen solchen Job gibt.

Die Shell behält eine Vorstellung von den aktuellen und vorherigen Jobs bei. In der Ausgabe betreffend
Jobs wird der aktuelle Job mit einem `+' und der vorherige Job mit einem `-' gekennzeichnet. Der
Abkürzungen `%+', `%' und (in Analogie zur Syntax der Geschichte Mechanismus) `%%'
alle beziehen sich auf den aktuellen Job, und `%-' bezieht sich auf den vorherigen Job.

Der Jobkontrollmechanismus erfordert, dass die stty(1) Option `neu' muss auf einigen Systemen gesetzt werden.
Es ist ein Artefakt aus einer `neuen' Implementierung des tty-Treibers, der die Generierung von
Unterbrechungszeichen von der Tastatur, um Jobs anzuweisen, zu stoppen. Sehen stty(1) und der setty
builtin-Befehl für Details zu den Einstellungsoptionen im neuen tty-Treiber.

Status Berichterstattung
Die Shell lernt sofort, wenn ein Prozess seinen Status ändert. Normalerweise informiert es dich
wenn ein Job gesperrt wird, so dass kein weiterer Fortschritt möglich ist, sondern nur richtig
bevor es eine Eingabeaufforderung druckt. Dies geschieht, damit Ihre Arbeit nicht anderweitig gestört wird.
Wenn Sie jedoch die Shell-Variable setzen benachrichtigen, die Shell benachrichtigt Sie sofort über
Statusänderungen in Hintergrundjobs. Es gibt auch einen Shell-Befehl benachrichtigen was markiert a
einzelnen Prozess, damit dessen Statusänderungen sofort gemeldet werden. Standardmäßig benachrichtigen
markiert den aktuellen Prozess; Sagen Sie einfach `benachrichtigen', nachdem Sie einen Hintergrundjob gestartet haben, um ihn zu markieren.

Wenn Sie versuchen, die Shell zu verlassen, während Jobs angehalten werden, werden Sie gewarnt, dass `Es gibt
ausgesetzte Jobs.' Sie können die Jobs & Karriere Befehl, um zu sehen, was sie sind. Wenn du das tust oder
Versuchen Sie sofort, das Programm erneut zu beenden, die Shell warnt Sie nicht ein zweites Mal, und die
ausgesetzte Jobs werden beendet.

Automatisch, periodisch und timed Veranstaltungen (+)
Es gibt verschiedene Möglichkeiten zum Ausführen von Befehlen und zum Ausführen anderer Aktionen automatisch an verschiedenen
Zeiten im ``Lebenszyklus'' der Schale. Sie sind hier zusammengefasst und beschrieben in
Details unter den entsprechenden builtin Befehle, Spezial Schale Variablen und Spezial
Aliase.

Die einplanen Der eingebaute Befehl fügt Befehle in eine Liste mit geplanten Ereignissen ein, die vom
Schale zu einem bestimmten Zeitpunkt.

Die beepcmd, cwdcmd, periodisch, vorbef, postcmd und jobcmd Spezial Aliase kann eingestellt werden,
bzw. um Befehle auszuführen, wenn die Shell die Glocke läuten möchte, wenn die Arbeit
Verzeichniswechsel, alle tperiode Minuten, vor jeder Eingabeaufforderung, bevor jeder Befehl erhält
ausgeführt, nachdem jeder Befehl ausgeführt wurde und wenn ein Job gestartet oder in den
der Vordergrund.

Die Autologout Die Shell-Variable kann so eingestellt werden, dass sie sich nach einer bestimmten Zahl abmeldet oder die Shell sperrt
Minuten der Inaktivität.

Die E-mail Die Shell-Variable kann so eingestellt werden, dass sie regelmäßig nach neuen E-Mails sucht.

Die printexit-Wert Shell-Variable kann so eingestellt werden, dass sie den Beendigungsstatus von Befehlen ausgibt, die
mit einem anderen Status als Null beenden.

Die rmstar Die Shell-Variable kann so eingestellt werden, dass sie den Benutzer fragt, wenn `rm *' eingegeben wird, wenn dies der Fall ist
wirklich was gemeint war.

Die Zeit Shell-Variable kann so eingestellt werden, dass sie ausgeführt wird Zeit eingebauter Befehl nach dem
Abschluss eines Prozesses, der mehr als eine bestimmte Anzahl von CPU-Sekunden benötigt.

Die ZEIT FÜR STORYTELLING und WER Shell-Variablen können so eingestellt werden, dass sie melden, wenn sich ausgewählte Benutzer an- oder abmelden,
und der Log Der eingebaute Befehl berichtet jederzeit über diese Benutzer.

Ureinwohner SPRACHE: Englisch System Unterstützung (+)
Die Shell ist acht Bit sauber (falls so kompiliert; siehe die Version Shell-Variable) und damit
unterstützt Zeichensätze, die diese Fähigkeit benötigen. Die NLS-Unterstützung unterscheidet sich je nachdem, ob
oder nicht, die Shell wurde kompiliert, um das NLS des Systems zu verwenden (siehe auch hier Version). In beiden
Fall ist 7-Bit-ASCII der Standardzeichencode (z. B. dessen Klassifizierung
Zeichen sind druckbar) und Sortieren und Ändern der SPRACHE or LC_CTYPE -Umgebung
Variablen bewirkt eine Prüfung auf mögliche Änderungen in dieser Hinsicht.

Bei Verwendung des NLS des Systems wird die setlocale(3) Funktion wird aufgerufen, um geeignete . zu bestimmen
Zeichencode/Klassifizierung und Sortierung (zB würde ein 'en_CA.UTF-8' "UTF-8" als a . ergeben
Zeichencode). Diese Funktion untersucht typischerweise die SPRACHE und LC_CTYPE -Umgebung
Variablen; Weitere Informationen finden Sie in der Systemdokumentation. Wenn Sie das nicht verwenden
NLS des Systems simuliert die Shell dies, indem sie davon ausgeht, dass der ISO 8859-1-Zeichensatz verwendet wird
wann immer einer von beiden SPRACHE und LC_CTYPE Variablen werden unabhängig von ihren Werten gesetzt.
Die Sortierung wird für den simulierten NLS nicht beeinflusst.

Darüber hinaus sind sowohl mit echtem als auch simuliertem NLS alle druckbaren Zeichen im Bereich
\200-\377, dh diejenigen, die M- habenverkohlen Bindungen, werden automatisch zurückgesendet an Selbst-
Einfügebefehl. Die entsprechende Bindung für die Flucht-verkohlen Sequenz, falls vorhanden, bleibt übrig
allein. Diese Charaktere werden nicht zurückgesendet, wenn die NOREBIND Umgebungsvariable gesetzt ist.
Dies kann für den simulierten NLS oder einen primitiven realen NLS nützlich sein, der volle ISO . annimmt
8859-1. Ansonsten alle M-verkohlen Bindungen im Bereich \240-\377 werden effektiv rückgängig gemacht.
Explizites erneutes Binden der relevanten Schlüssel mit Bindungsschlüssel ist natürlich weiterhin möglich.

Unbekannte Zeichen (dh solche, die weder druckbar sind noch Steuerzeichen) sind
gedruckt im Format \nnn. Wenn sich das tty nicht im 8-Bit-Modus befindet, sind andere 8-Bit-Zeichen
gedruckt, indem Sie sie in ASCII konvertieren und den Standout-Modus verwenden. Die Schale ändert nie die
7/8-Bit-Modus des tty und verfolgt vom Benutzer initiierte Änderungen des 7/8-Bit-Modus. NLS-Benutzer (oder,
diejenigen, die einen Metaschlüssel verwenden möchten) müssen möglicherweise das tty explizit auf 8 . setzen
Bit-Modus durch die entsprechende stty(1) Befehl in z. B. dem ~/.login Datei.

OS Variante Unterstützung (+)
Eine Reihe neuer integrierter Befehle wird bereitgestellt, um Funktionen insbesondere beim Betrieb zu unterstützen
Systeme. Alle sind ausführlich in der beschrieben builtin Befehle .

Auf Systemen, die TCF unterstützen (aix-ibm370, aix-ps2), bekommtPfad und setpfad holen und einstellen
Systemausführungspfad, getxvers und setxvers Holen Sie sich das Präfix der experimentellen Version und legen Sie es fest
und migriert migriert Prozesse zwischen Standorten. Der Jobs & Karriere builtin druckt die Site, auf der
jeder Job wird ausgeführt.

Unter BS2000, bs2cmd führt Befehle des zugrundeliegenden BS2000/OSD-Betriebssystems aus.

Unter Domäne/Betriebssystem, inlib fügt der aktuellen Umgebung gemeinsam genutzte Bibliotheken hinzu, Wurzelknoten Änderungen
der Wurzelknoten und sehen ändert den Systemtyp.

Unter Mach, Pfad festlegen entspricht Machs Pfad festlegen(1).

Unter Masscomp/RTU und Harris CX/UX, Universum setzt das Universum.

Unter Harris CX/UX, ucb or zu führt einen Befehl unter dem angegebenen Universum aus.

Unter konvex/OS, verziehen druckt oder stellt das Universum ein.

Die VENDOR, OSTYP und MACHTYP Umgebungsvariablen geben jeweils den Anbieter an,
Betriebssystem und Maschinentyp (Mikroprozessorklasse oder Maschinenmodell) des Systems an
die die Shell denkt, dass sie läuft. Diese sind besonders nützlich, wenn Sie Ihre
Heimatverzeichnis zwischen mehreren Maschinentypen; man kann zum Beispiel

Pfad setzen = (~/bin.$MACHTYPE /usr/ucb /Behälter / usr / bin .)

in einem ~/.login und legen Sie ausführbare Dateien, die für jede Maschine kompiliert wurden, in die entsprechenden
Verzeichnis.

Die Version Die Shell-Variable gibt an, welche Optionen beim Kompilieren der Shell ausgewählt wurden.

Beachten Sie auch die neugrp eingebaut, die Afsuser und echo_stil Shell-Variablen und die System-
abhängige Speicherorte der Eingabedateien der Shell (siehe DATEIEN).

Signal Umgang
Login-Shells ignorieren Interrupts beim Lesen der Datei ~/.logout. Die Shell ignoriert quit
Signale, es sei denn, sie beginnen mit -q. Login-Shells fangen das Beendigungssignal ab, aber keine Anmeldung
Shells erben das Beendigungsverhalten von ihren Eltern. Andere Signale haben die Werte
die die Shell von ihrem Elternteil geerbt hat.

In Shell-Skripten kann die Verarbeitung von Interrupt- und Terminierungssignalen durch die Shell sein:
gesteuert mit onintr, und die Handhabung von Hangups kann mit gesteuert werden hup und Nohup.

Die Shell wird beim Auflegen beendet (siehe auch die Abmeldung Shellvariable). Standardmäßig ist die Shell
Kinder tun dies auch, aber die Shell sendet ihnen keinen Aufhänger, wenn sie beendet wird. hup arrangiert
damit die Shell beim Beenden einen Hangup an ein Kind sendet, und Nohup lässt ein Kind ignorieren
Aufhänger.

Terminal Management (+)
Die Shell verwendet drei verschiedene Arten von Terminal-Modi (``tty''): `edit', wird verwendet, wenn
editieren, `quote', verwendet, wenn wörtliche Zeichen in Anführungszeichen gesetzt werden, und `execute', verwendet, wenn ausgeführt
Befehle. Die Shell hält einige Einstellungen in jedem Modus konstant, also Befehle die verlassen
die tty in einem verwirrten Zustand stören die Shell nicht. Die Schale passt auch
Änderungen in der Geschwindigkeit und Polsterung des tty. Die Liste der tty-Modi, die konstant gehalten werden
kann mit dem überprüft und modifiziert werden setty eingebaut. Beachten Sie, dass der Editor zwar
CBREAK-Modus (oder sein Äquivalent), es werden sowieso vorausgetippte Zeichen verwendet.

Die echotc, Einst und Telltc Befehle können verwendet werden, um das Terminal zu manipulieren und zu debuggen
Funktionen über die Befehlszeile.

Auf Systemen, die SIGWINCH oder SIGWINDOW unterstützen, passt sich die Shell an die Fenstergröße an
automatisch und passt die Umgebungsvariablen an LINES und COLUMNS wenn eingestellt. Wenn die
variable Umgebung TERMCAP enthält li#- und co#-Felder, die Shell passt sie an
die neue Fenstergröße widerspiegeln.

REFERENCE


In den nächsten Abschnitten dieses Handbuchs werden alle verfügbaren builtin Befehle, Spezial
Aliase und Spezial Schale Variablen.

builtin Befehle
%Job Ein Synonym für die fg eingebauter Befehl.

%Job & Ein Synonym für die bg eingebauter Befehl.

: Tut nichts, erfolgreich.

@
@ Name = ausdr
@ Name[Index] = ausdr
@ Name++|--
@ Name[Index]++|--
Das erste Formular gibt die Werte aller Shell-Variablen aus.

Die zweite Form weist den Wert von zu ausdr zu Name. Die dritte Form weist die
Wert von ausdr zu den Index'te Komponente von Name; beide Name und sein Index'NS
Komponente muss bereits vorhanden sein.

ausdr kann die Operatoren `*', `+' usw. enthalten, wie in C. Wenn ausdr enthält `<',
`>', `&' oder `' dann zumindest der Teil von ausdr muss innerhalb von `()' platziert werden. Notiz
dass die Syntax von ausdr hat nichts mit dem unter beschrieben zu tun Ausdrücke.

Die vierte und fünfte bilden Inkrement (`++') oder Dekrement (`--') Name oder ihre
Index'te Komponente.

Das Leerzeichen zwischen `@' und Name Wird benötigt. Die Zwischenräume Name und `=' und
zwischen `=' und ausdr sind optional. Komponenten von ausdr muss getrennt werden durch
Räume.

alias [Name [Wortliste]]
Gibt ohne Argumente alle Aliase aus. Mit Name, gibt den Aliasnamen für name aus.
Mit Name und Wortliste, weist zu Wortliste als Alias ​​von Name. Wortliste is
Befehl und Dateiname ersetzt. Name darf nicht `alias' oder `unalias' sein. Siehe auch
die Unalias eingebauter Befehl.

zuweisen Zeigt die Menge des erworbenen dynamischen Speichers, aufgeschlüsselt in verwendet und frei
Erinnerung. Mit einem Argument wird die Anzahl der freien und verwendeten Blöcke in jeder Größe angezeigt
Kategorie. Die Kategorien beginnen bei Größe 8 und verdoppeln sich bei jedem Schritt. Dieser Befehl ist
Die Ausgabe kann je nach Systemtyp variieren, da andere Systeme als das VAX ein
unterschiedliche Speicherzuordnung.

bg [%Job ...]
Fügt die angegebenen Jobs (oder ohne Argumente den aktuellen Job) in das
Hintergrund, wobei jede fortgesetzt wird, wenn sie gestoppt wird. Job kann eine Zahl, ein String, `' sein,
`%', `+' oder `-' wie unter . beschrieben Jobs.

Bindungsschlüssel [-l|-d|-e|-v|-u] (+)
Bindungsschlüssel [-a] [-b] [-k] [-r] [--] Haupt (+)
Bindungsschlüssel [-a] [-b] [-k] [-c|-s] [--] Haupt Befehl (+)
Ohne Optionen listet das erste Formular alle gebundenen Schlüssel und den Editorbefehl auf
die jeweils gebunden sind, listet die zweite Form den Editorbefehl auf, an den Haupt is
gebunden und die dritte Form bindet den Editorbefehl Befehl zu Haupt. Optionen
umfasst:

-l Listet alle Editorbefehle und eine kurze Beschreibung zu jedem auf.
-d Bindet alle Schlüssel an die Standardbindungen für den Standardeditor.
-e Bindet alle Schlüssel an die standardmäßigen GNU Emacs-ähnlichen Bindungen.
-v Bindet alle Schlüssel an den Standard vi(1)-ähnliche Bindungen.
-a Listet Tastenbelegungen in der alternativen Tastenzuordnung auf oder ändert sie. Dies ist die Schlüsselkarte
benutzt in vi Befehlsmodus.
-b Haupt wird als Steuerzeichen interpretiert ^Charakter (zB `^A') oder
C-Charakter (zB `C-A'), ein Metazeichen geschrieben M-Charakter (zB "M-A"),
eine Funktionstaste mit der Aufschrift F-Schnur (zB `F-String') oder ein erweiterter Präfixschlüssel
geschrieben X-Charakter (zB "X-A").
-k Haupt wird als symbolischer Pfeiltastenname interpretiert, der einer von `down' sein kann,
„oben“, „links“ oder „rechts“.
-r Entfernt Hauptist verbindlich. Seien Sie vorsichtig: `bindkey -r' tut es nicht binden Haupt zu Selbst-
Einfügebefehl (qv), es bindet Haupt vollständig.
-c Befehl wird als eingebauter oder externer Befehl anstelle eines Editors interpretiert
Befehl.
-s Befehl wird als Literalzeichenfolge genommen und als Terminaleingabe behandelt, wenn Haupt is
getippt. Gebundene Schlüssel in Befehl werden selbst neu interpretiert, und das geht weiter
für zehn Interpretationsebenen.
-- Erzwingt eine Unterbrechung der Optionsverarbeitung, sodass das nächste Wort als genommen wird Haupt sogar
wenn es mit '-' beginnt.
-u (oder eine ungültige Option)
Druckt eine Nutzungsmeldung.

Haupt kann ein einzelnes Zeichen oder eine Zeichenfolge sein. Wenn ein Befehl an einen String gebunden ist, wird der
erstes Zeichen der Zeichenfolge ist gebunden an Sequenz-Einleitung und die ganze Saite
ist an den Befehl gebunden.

Steuerzeichen in Haupt können wörtlich sein (sie können eingegeben werden, indem ihnen vorangestellt wird
der Editor-Befehl Zitat-Einfügung, normalerweise an `^V' gebunden) oder geschriebene Caret-
Zeichenstil, zB `^A'. Löschen wird geschrieben `^?' (Caret-Fragezeichen). Haupt
und Befehl kann Backslashed-Escape-Sequenzen enthalten (im Stil von System V
Echo(1)) wie folgt:

\a Bell
\b Rücktaste
\e Flucht
\f Formularvorschub
\n Neue Zeile
\r Wagenrücklauf
\t Horizontale Registerkarte
\v Vertikale Registerkarte
\nnn Das der Oktalzahl entsprechende ASCII-Zeichen nnn

`\' hebt die besondere Bedeutung des folgenden Zeichens auf, falls vorhanden,
insbesondere `\' und `^'.

bs2cmd bs2000-Befehl (+)
Pässe bs2000-Befehl an den BS2000-Kommandointerpreter zur Ausführung. Nur nicht-
interaktive Befehle können ausgeführt werden, und es ist nicht möglich, irgendwelche auszuführen
Befehl, der das Bild des aktuellen Prozesses überlagern würde, wie /EXECUTE oder
/AUFRUFVERFAHREN. (nur BS2000)

brechen Veranlasst die Wiederaufnahme der Ausführung nach dem Ende der nächsten umschließung foreach or
und gleichzeitig die. Die restlichen Befehle in der aktuellen Zeile werden ausgeführt. Mehrstufig
Pausen sind somit möglich, indem sie alle in eine Zeile geschrieben werden.

brichtw Verursacht eine Pause von a wechseln, Fortsetzen nach dem endet.

gebaut (+)
Gibt die Namen aller eingebauten Befehle aus.

bye (+) Ein Synonym für die Abmeldung eingebauter Befehl. Nur verfügbar, wenn die Schale so war
zusammengestellt; sieh das Version Shell-Variable.

Häuser Etikette:
Ein Etikett in a wechseln Aussage wie unten besprochen.

cd [-p] [-l] [-n|-v] [ICH--] [Name]
Wenn ein Verzeichnis Name gegeben ist, ändert das Arbeitsverzeichnis der Shell in Name. Wenn
nicht, ändert sich zu Startseite. Wenn Name ist `-' es wird als die vorherige Arbeit interpretiert
Verzeichnis (siehe Andere Substitutionen). (+) Wenn Name ist kein Unterverzeichnis von
aktuelles Verzeichnis (und beginnt nicht mit `/', `./' oder `../'), jede Komponente von
Die Variable CD-Pfad wird überprüft, ob es ein Unterverzeichnis hat Name. Schließlich, wenn
alles andere scheitert aber Name ist eine Shell-Variable, deren Wert mit `/' beginnt, dann ist dies
wird versucht zu sehen, ob es sich um ein Verzeichnis handelt.

Mit -p, gibt den endgültigen Verzeichnisstapel aus, genau wie dirsdem „Vermischten Geschmack“. Seine -l, -n und -v
Flaggen haben die gleiche Wirkung auf cd einen Sohn dirs, und sie implizieren -p. (+) Verwenden von --
erzwingt eine Unterbrechung der Optionsverarbeitung, sodass das nächste Wort als Verzeichnis verwendet wird
Name auch wenn es mit '-' beginnt. (+)

Siehe auch die implizit Shell-Variable.

chdir Ein Synonym für die cd eingebauter Befehl.

gesamten [Befehl [Wort/Anleitungen/Liste[:wählen]/[[Suffix]/] ...]] (+)
Listet ohne Argumente alle Vervollständigungen auf. Mit Befehl, listet Vervollständigungen auf für
Befehl. Mit Befehl und Wort etc., definiert Vervollständigungen.

Befehl kann ein vollständiger Befehlsname oder ein Glob-Muster sein (siehe Dateiname Substitution).
Es kann mit `-' beginnen, um anzugeben, dass die Vervollständigung nur verwendet werden soll, wenn Befehl
ist nicht eindeutig.

Wort gibt an, welches Wort relativ zum aktuellen Wort vervollständigt werden soll, und kann
einer der folgenden sein:

c Vervollständigung des aktuellen Worts. Anleitungen ist ein Glob-Muster, das mit dem übereinstimmen muss
Anfang des aktuellen Wortes in der Befehlszeile. Anleitungen wird ignoriert
beim Vervollständigen des aktuellen Wortes.
C Like c, aber beinhaltet Anleitungen beim Vervollständigen des aktuellen Wortes.
n Vervollständigung des nächsten Wortes. Anleitungen ist ein Glob-Muster, das mit dem übereinstimmen muss
Anfang des vorherigen Wortes in der Befehlszeile.
N Like n, muss aber mit dem Anfang des Wortes zwei vor dem aktuellen übereinstimmen
Wort.
p Positionsabhängiger Abschluss. Anleitungen ist ein Zahlenbereich, mit dem gleichen
Syntax zum Indexieren von Shell-Variablen, die das aktuelle Wort enthalten muss.

Liste, die Liste der möglichen Vervollständigungen, kann eine der folgenden sein:

a Aliases
b Bindungen (Editorbefehle)
c Befehle (eingebaute oder externe Befehle)
C Externe Befehle, die mit dem angegebenen Pfadpräfix beginnen
d Verzeichnisse
D Verzeichnisse, die mit dem angegebenen Pfadpräfix beginnen
e Umgebungsvariablen
f Dateinamen
F Dateinamen, die mit dem angegebenen Pfadpräfix beginnen
g Gruppennamen
j Jobs
l Limits
n Nichts
s Shell-Variablen
S Signale
t Einfache (``Text'') Dateien
T Einfache (``Text'') Dateien, die mit dem angegebenen Pfadpräfix beginnen
v Beliebige Variablen
u Benutzernamen
x Like n, aber druckt wählen wann Listenauswahl wird eingesetzt.
X Ergänzungen
$jung Wörter aus der Variablen jung
(...) Wörter aus der angegebenen Liste
`...` Wörter aus der Befehlsausgabe

wählen ist ein optionales Glob-Muster. Wenn angegeben, nur Wörter von Liste das passt
wählen berücksichtigt werden und die figurieren Shell-Variable wird ignoriert. Die letzten drei
Arten der Vervollständigung dürfen nicht a wählen Muster, und x verwendet wählen als
erklärende Nachricht, wenn die Listenauswahl Editor-Befehl verwendet wird.

Suffix ist ein einzelnes Zeichen, das an einen erfolgreichen Abschluss angehängt wird. Wenn null,
Es wird kein Zeichen angehängt. Wenn weggelassen (in diesem Fall kann auch das vierte Trennzeichen)
weggelassen werden), wird an Verzeichnisse ein Schrägstrich und an andere Wörter ein Leerzeichen angehängt.

Befehl aufgerufen von der `...`-Version hat einen zusätzlichen Umgebungsvariablensatz, der
Variablenname ist BEFEHLSZEILE und enthält (wie der Name schon sagt) den Inhalt der
aktuelle (bereits eingegebene) Befehlszeile. Man kann Inhalte der
BEFEHLSZEILE Variable in ihrem benutzerdefinierten Skript, um komplexere Vervollständigungen zu erstellen
(siehe Vervollständigung für svn(1) in diesem Paket enthalten).

Nun zu einigen Beispielen. Einige Befehle akzeptieren nur Verzeichnisse als Argumente, also
Es macht keinen Sinn, einfache Dateien zu vervollständigen.

> komplette CD 'p/1/d/'

vervollständigt nur das erste Wort nach `cd' (`p/1') mit einem Verzeichnis. p-Art
Die Vervollständigung kann auch verwendet werden, um die Befehlsvervollständigung einzugrenzen:

> co[^D]
komplette Kompresse
> komplett -co* 'p/0/(komprimieren)/'
> co[^D]
> komprimieren

Diese Vervollständigung vervollständigt Befehle (Wörter an Position 0, `p/0'), die mit beginnen
`co' (also `co*') zu `compress' (das einzige Wort in der Liste). Die Führung
`-' gibt an, dass diese Vervollständigung nur mit mehrdeutigen Befehlen verwendet werden soll.

> komplette Suche 'n/-user/u/'

ist ein Beispiel für n-Typ-Vervollständigung. Jedes Wort nach `find' und sofort
folgendes `-user' wird aus der Benutzerliste vervollständigt.

> komplettes cc 'c/-I/d/'

zeigt c-Typ-Vervollständigung. Jedes Wort, das auf 'cc' folgt und mit '-I' beginnt
wird als Verzeichnis vervollständigt. `-I' wird nicht als Teil des Verzeichnisses verwendet, weil
wir haben Kleinbuchstaben verwendet c.

Verschiedene Listes sind mit verschiedenen Befehlen nützlich.

> vollständiger Alias ​​'p/1/a/'
> kompletter Mann 'p/*/c/'
> Komplettset 'p/1/s/'
> vervollständige wahr 'p/1/x:Wahrheit hat keine Optionen./'

Diese vollständigen Wörter, die auf 'alias' mit Aliasnamen, 'man' mit Befehlen und
`set' mit Shell-Variablen. `true' hat keine Optionen, also x tut nichts
wenn die Vervollständigung versucht wird und `Wahrheit hat keine Optionen.' ausgibt. wenn fertig
Auswahlmöglichkeiten aufgelistet.

Beachten Sie, dass die Mann Beispiel und einige andere Beispiele weiter unten könnten genauso gut sein
'c/*' oder 'n/*' als 'p/*' verwendet haben.

Wörter können aus einer zum Abschlusszeitpunkt ausgewerteten Variablen vervollständigt werden,

> komplette FTP 'p/1/$hostnames/'
> Hostnamen setzen = (rtfm.mit.edu tesla.ee.cornell.edu)
> FTP [^D]
rtfm.mit.edu tesla.ee.cornell.edu
> FTP [^C]
> Hostnamen setzen = (rtfm.mit.edu tesla.ee.cornell.edu uunet.uu.net)
> FTP [^D]
rtfm.mit.edu tesla.ee.cornell.edu uunet.uu.net

oder von einer Befehlsausführung zum Zeitpunkt der Beendigung:

> komplettes Töten 'p/*/`ps | awk \{print\ \$1\}`/'
> töten -9 [^D]
23113 23377 23380 23406 23429 23529 23530 PID

Beachten Sie, dass die gesamten Befehl zitiert seine Argumente nicht selbst, also die geschweiften Klammern,
Leerzeichen und `$' in `{print $1}' müssen explizit in Anführungszeichen gesetzt werden.

Ein Befehl kann mehrere Vervollständigungen haben:

> komplette dbx 'p/2/(core)/' 'p/*/c/'

vervollständigt das zweite Argument von `dbx' mit dem Wort `core' und allen anderen
Argumente mit Befehlen. Beachten Sie, dass die Positionsvervollständigung vor angegeben ist
die nächste Wortvervollständigung. Da Vervollständigungen von links nach rechts ausgewertet werden,
Wenn die Vervollständigung des nächsten Wortes zuerst angegeben würde, würde sie immer übereinstimmen und die
Positionsvervollständigung würde niemals ausgeführt werden. Dies ist ein häufiger Fehler, wenn
Abschluss definieren.

Die wählen Muster ist nützlich, wenn ein Befehl nur Dateien mit bestimmten Formen verwendet
als Argumente. Zum Beispiel,

> komplett cc 'p/*/f:*.[cao]/'

vervollständigt `cc'-Argumente für Dateien, die nur auf `.c', `.a' oder `.o' enden. wählen können.
schließen Sie auch Dateien aus, indem Sie die Negation eines Glob-Musters verwenden, wie unter . beschrieben Dateiname
Substitution. Könnte man gebrauchen

> vervollständige rm 'p/*/f:^*.{c,h,cc,C,tex,1,man,l,y}/'

um wertvollen Quellcode von der `rm'-Vervollständigung auszuschließen. Natürlich könnte man noch
Geben Sie ausgeschlossene Namen manuell ein oder überschreiben Sie den Vervollständigungsmechanismus mit dem
komplett-wort-roh or Listenauswahl-roh Editorbefehle (siehe).

Das „C“, „D“, „F“ und „T“ Listes sind wie `c', `d', `f' bzw. `t', aber
sie benutzen die wählen Argument auf andere Weise: um die Vervollständigung auf Dateien zu beschränken
beginnend mit einem bestimmten Pfadpräfix. Zum Beispiel verwendet das Elm-Mail-Programm
`=' als Abkürzung für das eigene Mail-Verzeichnis. Könnte man gebrauchen

> Ulme vervollständigen c@=@F:$HOME/Mail/@

um `elm -f =' zu vervollständigen, als ob es `elm -f . wäre ~/Mail/'. Beachten Sie, dass wir `@' verwendet haben
anstelle von `/' um Verwechslungen mit dem zu vermeiden wählen Argument, und wir haben `$HOME'
anstelle von `~', da die Ersetzung des Heimatverzeichnisses nur am Anfang von funktioniert
ein Wort.

Suffix wird verwendet, um ein nicht standardmäßiges Suffix (kein Leerzeichen oder `/' für Verzeichnisse) an . hinzuzufügen
abgeschlossene Wörter.

> kompletter Finger 'c/*@/$hostnames/' 'p/1/u/@'

vervollständigt Argumente für `finger' aus der Benutzerliste, hängt ein `@' an und dann
wird nach dem `@' aus der `hostnames'-Variable vervollständigt. Beachten Sie noch einmal die Reihenfolge in
in denen die Vervollständigungen angegeben sind.

Abschließend noch ein komplexes Beispiel zur Inspiration:

> komplette Suche \
'n/-name/f/' 'n/-neuer/f/' 'n/-{,n}cpio/f/' \
´n/-exec/c/' 'n/-ok/c/' 'n/-user/u/' \
'n/-group/g/' 'n/-fstype/(nfs 4.2)/' \
'n/-typ/(bcdflps)/' \
´c/-/(name neuer cpio ncpio exec ok user \
Gruppe fstype Typ atime ctime Tiefe inum \
ls mtime nogroup nouser perm print prune \
Größe xdev)/' \
'p/*/d/'

Dies vervollständigt Wörter, die auf `-name', `-newer', `-cpio' oder `ncpio' folgen (beachten Sie die
Muster, das mit beiden übereinstimmt) zu Dateien, Wörter nach `-exec' oder `-ok' zu
Befehle, Wörter nach `Benutzer' und `Gruppe' für Benutzer bzw. Gruppen und
Wörter nach `-fstype' oder `-type' zu Mitgliedern der gegebenen Listen. Es auch
vervollständigt die Schalter selbst aus der angegebenen Liste (beachten Sie die Verwendung von c-Art
Vervollständigung) und vervollständigt alles, was sonst nicht abgeschlossen ist, zu einem Verzeichnis. Wütend.

Denken Sie daran, dass programmierte Vervollständigungen ignoriert werden, wenn das zu vervollständigende Wort a . ist
Tilde-Ersetzung (beginnend mit `~') oder eine Variable (beginnend mit `$').
gesamten ist eine experimentelle Funktion und die Syntax kann sich in zukünftigen Versionen ändern
der Schale. Siehe auch die unvollständig eingebauter Befehl.

fortsetzen
Setzt die Ausführung der nächsten Umschließung fort und gleichzeitig die or foreach. Der Rest des
Befehle in der aktuellen Zeile werden ausgeführt.

Standard:
Bezeichnet den Standardfall in a wechseln Erklärung. Es sollte doch kommen Häuser
Etiketten.

dirs [-l] [-n|-v]
dirs -S|-L [Dateinamen] (+)
dirs -c (+)
Das erste Formular druckt den Verzeichnisstapel. Die Spitze des Stapels ist links
und das erste Verzeichnis im Stack ist das aktuelle Verzeichnis. Mit -l, `~' oder
`~Name' in der Ausgabe wird explizit erweitert zu Startseite oder der Pfadname des Hauses
Verzeichnis für Benutzer Name. (+) Mit -n, Einträge werden umgebrochen, bevor sie die . erreichen
Rand des Bildschirms. (+) Mit -v, Einträge werden einzeln pro Zeile gedruckt, mit vorangestelltem
ihre Stapelpositionen. (+) Wenn mehr als einer von -n or -v gegeben ist, -v nimmt
Vorrang. -p wird akzeptiert, tut aber nichts.

Mit -S, das zweite Formular speichert den Verzeichnisstapel unter Dateinamen als eine Reihe von cd
und pushd Befehle. Mit -L, die Shell-Quellen Dateinamen, was vermutlich a . ist
Verzeichnis-Stack-Datei, die vom . gespeichert wurde -S Option oder die Retter Mechanismus. In beiden
Fall, dirsfile wird verwendet, wenn Dateinamen ist nicht gegeben und ~/.cshdirs wird verwendet, wenn dirsfile
ist nicht gesetzt.

Beachten Sie, dass Login-Shells beim Start das Äquivalent zu `dirs -L' ausführen und wenn Retter
gesetzt ist, `dirs -S' vor dem Beenden. Denn nur ~/.tcshrc wird normalerweise bezogen
bevor ~/.cshdirs, dirsfile sollte eingebaut werden ~/.tcshrc statt ~/.login.

Das letzte Formular löscht den Verzeichnisstapel.

Echo [-n] Wort ...
Schreibt jeder Wort zur Standardausgabe der Shell, getrennt durch Leerzeichen und
mit einem Zeilenumbruch beendet. Der echo_stil Shell-Variable kann so eingestellt werden, dass sie emuliert
(oder nicht) die Flags und Escape-Sequenzen der BSD- und/oder System V-Versionen von
Echo; sehen Echo(1).

echotc [-sv] arg ... (+)
Übt die Terminalfähigkeiten aus (siehe termcap(5 in args. Beispielsweise,
'echotc home' schickt den Cursor an die Home-Position, 'echotc cm 3 10' schickt ihn an
Spalte 3 und Zeile 10 und 'echotc ts 0; echo "Dies ist ein Test."; echotc fs' Drucke
"Das ist ein Test." in der Statuszeile.

If arg ist 'baud', 'cols', 'lines', 'meta' oder 'tabs', gibt den Wert davon aus
Fähigkeit ("ja" oder "nein" zeigt an, dass das Terminal dies hat oder nicht hat
Fähigkeit). Man könnte dies verwenden, um die Ausgabe eines Shell-Skripts zu verkleinern
ausführlich auf langsamen Terminals oder begrenzen Sie die Befehlsausgabe auf die Anzahl der Zeilen auf dem
Bildschirm:

> set history=`echotc lines`

> @ Geschichte--
Termcap-Strings können Platzhalter enthalten, die nicht korrekt wiedergegeben werden. Man sollte
verwenden Sie doppelte Anführungszeichen, wenn Sie eine Shell-Variable auf einen Terminal-Capability-String setzen,
wie im folgenden Beispiel, das das Datum in der Statuszeile platziert:

> setze tosl="`echotc ts 0`"
> set frsl="`echotc fs`"
> echo -n "$tosl";Datum; echo -n "$frsl"

Mit -s, nicht vorhandene Fähigkeiten geben die leere Zeichenfolge zurück, anstatt einen zu verursachen
Error. Mit -v, Nachrichten sind ausführlich.

sonst
Ende
Endif
endet Siehe die Beschreibung der foreach, if, wechseln und und gleichzeitig die Aussagen weiter unten.

eval arg ...
Behandelt die Argumente als Eingabe für die Shell und führt die resultierenden Befehle aus.
im Kontext der aktuellen Shell. Dies wird normalerweise verwendet, um Befehle auszuführen
als Ergebnis einer Befehls- oder Variablensubstitution generiert, da das Parsen
tritt vor diesen Substitutionen auf. Sehen tset(1) für eine beispielhafte Verwendung von eval.

exec Befehl
Führt den angegebenen Befehl anstelle der aktuellen Shell aus.

wunsch [ausdr]
Die Shell wird entweder mit dem Wert des angegebenen ausdr (ein Ausdruck, wie
beschrieben unter Ausdrücke) oder, ohne ausdr, mit dem Wert 0.

fg [%Job ...]
Bringt die angegebenen Jobs (oder ohne Argumente den aktuellen Job) in den
Vordergrund, wobei jeder fortgesetzt wird, wenn er gestoppt wird. Job kann eine Zahl, ein String, `' sein,
`%', `+' oder `-' wie unter . beschrieben Jobs. Siehe auch die run-fg-editor Herausgeber
Befehl.

Dateitest -op Datei ... (+)
Gilt op (das ist ein Dateiabfrageoperator wie unter beschrieben Reichen Sie das Anfrage
durch) zu jedem Datei und gibt die Ergebnisse als durch Leerzeichen getrennte Liste zurück.

foreach Name (Wortliste)
...
Ende Setzt nacheinander die Variable Name an jedes Mitglied von Wortliste und führt die
Befehlsfolge zwischen diesem Befehl und dem passenden Ende. (Beide foreach und
Ende muss allein in separaten Zeilen erscheinen.) Der eingebaute Befehl fortsetzen könnte sein
verwendet, um die Schleife vorzeitig fortzusetzen und der eingebaute Befehl brechen zu beenden
es vorzeitig. Wenn dieser Befehl vom Terminal gelesen wird, wird die Schleife gelesen
einmal mit `foreach? ' (oder Eingabeaufforderung2) bevor irgendwelche Anweisungen in der Schleife sind
hingerichtet. Wenn Sie beim Eingeben einer Schleife am Terminal einen Fehler machen, können Sie es reiben
out.

bekommtPfad (+)
Gibt den Systemausführungspfad aus. (nur TCF)

getxvers (+)
Druckt das experimentelle Versionspräfix. (nur TCF)

Klacks Wortliste
Like Echo, aber der Parameter `-n' wird nicht erkannt und Wörter werden durch
Nullzeichen in der Ausgabe. Nützlich für Programme, die die Shell verwenden möchten, um
Dateiname erweitert eine Liste von Wörtern.

goto Wort
Wort ist Dateiname und wird durch den Befehl ersetzt, um einen String der Form `label' zu erhalten.
Die Shell spult ihre Eingabe so weit wie möglich zurück, sucht nach einer Zeile der Form
`label:', möglicherweise mit vorangestellten Leerzeichen oder Tabulatoren, und setzt die Ausführung danach fort
Linie.

Hashstat
Gibt eine Statistikzeile aus, die angibt, wie effektiv die interne Hash-Tabelle war
beim Auffinden von Befehlen (und Vermeiden von exec'S). Ein exec wird für jeden versucht
Bestandteil des Weg wobei die Hash-Funktion einen möglichen Treffer anzeigt, und in
jede Komponente, die nicht mit einem `/' beginnt.

Bei Maschinen ohne vgabel(2), druckt nur die Anzahl und Größe der Hash-Buckets.

Geschichte [-hTr] [n]
Geschichte -S|-L|-M [Dateinamen] (+)
Geschichte -c (+)
Das erste Formular druckt die Verlaufsereignisliste. Wenn n gibt es nur die n vor allem warme
Die letzten Ereignisse werden gedruckt oder gespeichert. Mit -h, die Verlaufsliste wird ohne ausgedruckt
führenden Zahlen. Wenn -T angegeben ist, werden Zeitstempel auch in Kommentarform ausgegeben.
(Dies kann verwendet werden, um Dateien zu erzeugen, die zum Laden mit 'history -L' oder . geeignet sind
'source -h'.) Mit -r, die Druckreihenfolge ist die neueste zuerst und nicht
Die ältesten zu erst.

Mit -S, das zweite Formular speichert die Verlaufsliste unter Dateinamen. Wenn das erste Wort von
die speichern Shell-Variable auf eine Zahl gesetzt ist, werden höchstens so viele Zeilen gespeichert.
Wenn das zweite Wort von speichern auf `merge' gesetzt ist, wird die Verlaufsliste mit zusammengeführt
die vorhandene Verlaufsdatei anstatt sie zu ersetzen (falls vorhanden) und sortiert nach
Zeitstempel. (+) Das Zusammenführen ist für eine Umgebung wie das X Window System vorgesehen
mit mehreren Schalen im gleichzeitigen Einsatz. Derzeit gelingt es nur, wenn die
Muscheln hören schön nacheinander auf.

Mit -L, die Shell hängt an Dateinamen, vermutlich eine Historienliste, die von . gespeichert wurde
die -S Option oder die speichern Mechanismus, zur Verlaufsliste. -M ist wie -L, Aber
Die Inhalte von Dateinamen werden in die Verlaufsliste eingefügt und nach Zeitstempel sortiert.
In beiden Fällen, histfile wird verwendet, wenn Dateinamen ist nicht gegeben und ~/.Geschichte verwendet wird
if histfile ist nicht eingestellt. `history -L' ist genau wie 'source -h', außer dass es
erfordert keinen Dateinamen.

Beachten Sie, dass Login-Shells beim Start das Äquivalent zu `history -L' ausführen und, falls
speichern gesetzt ist, `history -S' vor dem Beenden. Denn nur ~/.tcshrc ist normalerweise
vorher bezogen ~/.Geschichte, histfile sollte eingebaut werden ~/.tcshrc statt
~/.login.

If histlit gesetzt ist, drucken und speichern das erste und zweite Formular das Literal
(unerweiterte) Form der Verlaufsliste.

Das letzte Formular löscht die Verlaufsliste.

hup [Befehl] (+)
Mit Befehlläuft Befehl so dass es bei einem Auflegesignal beendet wird und arrangiert
damit die Shell ihm ein Hangup-Signal sendet, wenn die Shell beendet wird. Beachten Sie, dass Befehle
kann ihre eigene Reaktion auf Auflegen festlegen und überschreiben hup. Ohne Argument,
bewirkt, dass die nicht interaktive Shell für den Rest des
Skript. Siehe auch Signal Umgang und der Nohup eingebauter Befehl.

if (ausdr) Befehl
If ausdr (ein Ausdruck, wie unter . beschrieben Ausdrücke) als wahr bewertet, dann
Befehl ausgeführt wird. Variablenersetzung ein Befehl passiert früh, gleichzeitig
Zeit, die es für den Rest der Zeit tut if Befehl. Befehl muss ein einfacher Befehl sein,
kein Alias, keine Pipeline, eine Befehlsliste oder eine Befehlsliste in Klammern, aber es
kann Argumente haben. Ein-/Ausgabeumleitung erfolgt auch dann, wenn ausdr ist falsch und
Befehl Somit nicht hingerichtet; das ist ein Fehler.

if (ausdr) dann
...
sonst if (Ausdruck2) dann
...
sonst
...
Endif Wenn das angegebene ausdr stimmt dann die befehle zum ersten sonst werden hingerichtet;
sonst wenn Ausdruck2 stimmt dann die befehle auf die sekunde sonst ausgeführt werden usw.
Eine beliebige Anzahl von sonst-wenn Paare sind möglich; nur einer Endif wird gebraucht. Das sonst Teil
ist ebenfalls optional. (Die Wörter sonst und Endif muss am Anfang von erscheinen
Eingangsleitungen; das if muss allein in seiner Eingabezeile erscheinen oder nach einem sonst.)

inlib Shared-Library ... (+)
Fügt jedes hinzu Shared-Library zum aktuellen Umfeld. Es gibt keine Möglichkeit, a zu entfernen
gemeinsame Bibliothek. (nur Domain/Betriebssystem)

Jobs & Karriere [-l]
Listet die aktiven Jobs auf. Mit -l, listet zusätzlich zu den normalen Prozess-IDs auf
Information. Druckt auf TCF-Systemen die Site, auf der jeder Job ausgeführt wird.

töten [-s Signal] %Job|pid ...
töten -l Das erste und zweite Formular sendet die angegebenen Signal (oder, wenn keine angegeben ist, die
TERM-Signal (Beenden) an die angegebenen Jobs oder Prozesse. Job kann eine Zahl sein,
eine Zeichenfolge, `', `%', `+' oder `-' wie unter . beschrieben Jobs. Signale werden entweder gegeben
nach Nummer oder nach Name (wie in /usr/include/signal.h, ohne Präfix
„SIG“). Es gibt keine Vorgabe Job; Nur "töten" zu sagen, sendet kein Signal an die
Derzeitiger Beruf. Wenn das gesendete Signal TERM (Beenden) oder HUP (Auflegen) ist, dann
dem Job oder Prozess wird auch ein CONT (Continue) Signal gesendet. Die dritte Formularliste
die Signalnamen.

begrenzen [-h] [Ressourcen [maximale Nutzung]]
Begrenzt den Verbrauch durch den aktuellen Prozess und jeden von ihm erstellten Prozess, um dies nicht zu tun
individuell übertreffen maximale Nutzung auf den angegebenen Ressourcen. Wenn nein maximale Nutzung is
gegeben, dann wird das aktuelle Limit gedruckt; wenn nein Ressourcen gegeben ist, dann alles
Einschränkungen gegeben sind. Wenn die -h Flag ist angegeben, stattdessen werden die harten Limits verwendet
der aktuellen Grenzen. Die harten Grenzen setzen den Werten der
aktuellen Grenzen. Nur der Super-User darf die Hard Limits erhöhen, aber ein User darf
die Stromgrenzen innerhalb des gesetzlichen Rahmens herabsetzen oder erhöhen.

Zu den steuerbaren Ressourcen gehören derzeit (sofern vom Betriebssystem unterstützt):

CPU-Zeit
die maximale Anzahl von CPU-Sekunden, die von jedem Prozess verwendet werden sollen

Dateigröße
die größte einzelne Datei, die erstellt werden kann

Datengröße
das maximale Wachstum der Data+Stack-Region über sbrk(2) über das Ende von . hinaus
der Programmtext

Stapelgrösse
die maximale Größe des automatisch erweiterten Stapelbereichs

Coredumpsize
die Größe des größten Core-Dumps, der erstellt wird

Speicherverbrauch
die maximale Menge an physischem Speicher, die ein Prozess ihm zugewiesen haben darf bei
eine bestimmte Zeit

vSpeicherverbrauch
die maximale Menge an virtuellem Speicher, die ein Prozess ihm zugewiesen haben darf bei
eine bestimmte Zeit (Adressraum)

vSpeicherverbrauch
die maximale Menge an virtuellem Speicher, die ein Prozess ihm zugewiesen haben darf bei
eine bestimmte Zeit

Wurfgröße
die maximale Speichermenge, die ein Prozess pro . zuweisen kann brk() Systemaufruf

Beschreibungen or openfiles
die maximale Anzahl geöffneter Dateien für diesen Prozess

Parallelität
die maximale Anzahl von Threads für diesen Prozess

speichergesperrt
die maximale Größe, die ein Prozess mit im Speicher sperren kann mlock(2)

maxproz
die maximale Anzahl gleichzeitiger Prozesse für diese Benutzer-ID

sbsize die maximale Größe der Socket-Puffernutzung für diesen Benutzer

Größe tauschen
die maximale Menge an Swap Space, die für diesen Benutzer reserviert oder verwendet wird

maxlocks
die maximale Anzahl von Schlössern für diesen Benutzer

maxsignal
die maximale Anzahl anstehender Signale für diesen Benutzer

maxnachricht
die maximale Anzahl von Bytes in POSIX-mqueues für diesen Benutzer

schön
die maximale nette Priorität, die der Benutzer gemappt erhöhen darf
[19...-20] bis [0...39] für diesen Benutzer

maxrtprio
die maximale Echtzeitpriorität für diesen Benutzer maxrttime das Timeout für RT
Aufgaben in Mikrosekunden für diesen Benutzer.

maximale Nutzung kann als (Gleitkomma- oder Ganzzahl) Zahl gefolgt von a . angegeben werden
Skalierungsfaktor. Für alle Grenzen außer CPU-Zeit die Standardskala ist `k' oder
`Kilobyte' (1024 Byte); ein Skalierungsfaktor von `m' oder `Megabytes' oder `g' oder
`Gigabytes' können auch verwendet werden. Für CPU-Zeit die Standardskalierung ist `Sekunden', während
`m' für Minuten oder `h' für Stunden, oder eine Zeit der Form `mm:ss' für Minuten und
Sekunden verwendet werden.

If maximale Nutzung ist `unbegrenzt', dann ist die Beschränkung auf den angegebenen Ressourcen is
entfernt (dies entspricht der unbegrenzt eingebauter Befehl).

Für beide Ressourcen Namen und Skalierungsfaktoren, eindeutige Präfixe der Namen
genügen.

Log (+) Druckt die ZEIT FÜR STORYTELLING Shell-Variable und Berichte über jeden in angegebenen Benutzer ZEIT FÜR STORYTELLING wer
eingeloggt, unabhängig davon, wann sie sich zuletzt eingeloggt haben. Siehe auch Watchlog.

login Beendet eine Login-Shell und ersetzt sie durch eine Instanz von /bin/login. Dies ist einer
Möglichkeit zum Abmelden, enthalten für Kompatibilität mit sh(1).

Abmeldung Beendet eine Login-Shell. Besonders nützlich, wenn ignorieren wird gesetzt.

ls-F [-wechseln ...] [Datei ...] (+)
Listet Dateien wie `ls -F' auf, aber viel schneller. Es identifiziert jede Art von Special
Datei im Listing mit einem Sonderzeichen:

/ Verzeichnis
* Ausführbare Datei
# Gerät blockieren
% Zeichengerät
| Named Pipe (nur Systeme mit Named Pipes)
= Steckdose (nur Systeme mit Steckdosen)
@ Symbolischer Link (nur Systeme mit symbolischen Links)
+ Verstecktes Verzeichnis (nur AIX) oder kontextabhängig (nur HP/UX)
: Netzwerk-Spezial (nur HP/UX)

Besitzt das Listenlinks Shell-Variable ist gesetzt, symbolische Links werden in mehr identifiziert
Detail (natürlich nur auf Systemen, die diese haben):

@ Symbolischer Link zu einem Nicht-Verzeichnis
> Symbolischer Link zu einem Verzeichnis
& Symbolischer Link ins Nirgendwo

Listenlinks verlangsamt auch ls-F und verursacht Partitionen, die Dateien enthalten, auf die verwiesen wird
zu montierende symbolische Links.

Besitzt das Listenflaggen Shell-Variable ist auf `x', `a' oder `A' oder eine beliebige Kombination gesetzt
davon (zB `xA'), werden sie als Flags für ls-F, so dass es sich wie `ls -xF' verhält,
`ls -Fa', `ls -FA' oder eine Kombination (zB `ls -FxA'). Auf Maschinen mit `ls -C'
ist nicht die Standardeinstellung, ls-F verhält sich wie `ls -CF', es sei denn Listenflaggen enthält ein `x', in
In diesem Fall verhält es sich wie `ls -xF'. ls-F übergibt seine Argumente an ls(1) wenn es ist
gegebenen Schalter, also macht `alias ls ls-F' im Allgemeinen das Richtige.

Die ls-F Builtin kann Dateien in verschiedenen Farben auflisten, abhängig vom Dateityp
oder Verlängerung. Siehe die Farbe Shell-Variable und die LS_FARBEN -Umgebung
variabel.

migriert [-site] pid|%Job-ID ... (+)
migriert -site (+)
Das erste Formular migriert den Prozess oder Job auf die angegebene Site oder den Standard
Site durch den Systempfad bestimmt. Die zweite Form ist äquivalent zu `migrate
-site $$': Es migriert den aktuellen Prozess auf die angegebene Site. Migrieren der
Shell selbst kann zu unerwartetem Verhalten führen, da die Shell das nicht mag
verlieren seine tty. (nur TCF)

neugrp [-] [Gruppe] (+)
Äquivalent zu `exec newgrp'; sehen neugrp(1). Nur verfügbar, wenn die Schale so war
zusammengestellt; sieh das Version Shell-Variable.

schön [+Anzahl] [Befehl]
Setzt die Planungspriorität für die Shell auf Anzahl, oder, ohne Anzahl, zu 4.
Mit Befehlläuft Befehl mit entsprechender Priorität. Je größer die Anzahl,
desto weniger CPU bekommt der Prozess. Der Super-User kann eine negative Priorität angeben durch
mit `nice -number ...'. Der Befehl wird immer in einer Sub-Shell ausgeführt, und die
Einschränkungen für Befehle in Simple if Aussagen gelten.

Nohup [Befehl]
Mit Befehlläuft Befehl so dass es Auflegesignale ignoriert. Beachten Sie, dass
Befehle können ihre eigene Reaktion auf Auflegen festlegen und überschreiben Nohup. Ohne ein
-Argument bewirkt, dass die nicht interaktive Shell nur Hangups für die
Rest des Skripts. Siehe auch Signal Umgang und der hup eingebauter Befehl.

benachrichtigen [%Job ...]
Veranlasst die Shell, den Benutzer asynchron zu benachrichtigen, wenn der Status eines der
angegebenen Jobs (oder, ohne %Job, der aktuelle Job) ändert sich, statt zu warten
bis zur nächsten Eingabeaufforderung wie gewohnt. Job kann eine Zahl, ein String, `', `%', `+' oder . sein
`-' wie unter beschrieben Jobs. Siehe auch die benachrichtigen Shell-Variable.

onintr [-|Etikette]
Steuert die Aktion der Shell bei Interrupts. Stellt ohne Argumente die wieder her
Standardaktion der Shell bei Interrupts, die darin besteht, Shell-Skripte zu beenden oder
, um zur Eingabeebene für die Terminalbefehle zurückzukehren. Mit `-' werden alle Interrupts
ignoriert werden. Mit Etikette, veranlasst die Shell, ein `goto . auszuführen Etikette' wenn ein
ein Interrupt empfangen wird oder ein Kindprozess beendet wird, weil er unterbrochen wurde.

onintr wird ignoriert, wenn die Shell getrennt und in Systemstartdateien ausgeführt wird
(sehen DATEIEN), wo Interrupts sowieso deaktiviert sind.

popd [-p] [-l] [-n|-v] [+n]
Ohne Argumente wird der Verzeichnisstapel geöffnet und zum neuen obersten Verzeichnis zurückgekehrt.
Mit einer Zahl `+n', verwirft die n'ten Eintrag im Stack.

Schließlich sind alle Formen von popd Drucken Sie den endgültigen Verzeichnisstapel, genau wie dirsdem „Vermischten Geschmack“. Seine
leise Shell-Variable kann gesetzt werden, um dies und das zu verhindern -p Flagge kann gegeben werden
überschreiben leisedem „Vermischten Geschmack“. Seine -l, -n und -v Flaggen haben die gleiche Wirkung auf popd as
on dirs. (+)

printenv [Name] (+)
Druckt die Namen und Werte aller Umgebungsvariablen oder mit Name, der Wert
der Umgebungsvariablen Name.

pushd [-p] [-l] [-n|-v] [Name|+n]
Tauscht ohne Argumente die oberen beiden Elemente des Verzeichnisstapels aus. Wenn
pushdtohome eingestellt ist, pushd ohne Argumente macht `pushd ~', wie cd. (+) Mit
Name, schiebt das aktuelle Arbeitsverzeichnis auf den Verzeichnisstapel und wechselt zu
Name. Wenn Name `-' ist, wird es als das vorherige Arbeitsverzeichnis interpretiert (siehe
Dateiname Substitution). (+) Wenn Dunique eingestellt ist, pushd entfernt alle Instanzen von
Name vom Stapel, bevor Sie es auf den Stapel schieben. (+) Mit einer Zahl `+n',
dreht die nElement des Verzeichnisstapels um das oberste Element zu sein und
Änderungen daran. Wenn extrahieren wird jedoch `pushd + . gesetztn' extrahiert die nth
Verzeichnis, schiebt es oben auf den Stapel und wechselt dorthin. (+)

Schließlich sind alle Formen von pushd Drucken Sie den endgültigen Verzeichnisstapel, genau wie dirsdem „Vermischten Geschmack“. Seine
leise Shell-Variable kann gesetzt werden, um dies und das zu verhindern -p Flagge kann gegeben werden
überschreiben leisedem „Vermischten Geschmack“. Seine -l, -n und -v Flaggen haben die gleiche Wirkung auf pushd as
on dirs. (+)

aufwärmen Verursacht die interne Hash-Tabelle des Inhalts der Verzeichnisse im Weg
Variable neu berechnet werden. Dies ist erforderlich, wenn die Autoreshash Shell-Variable ist nicht
set und neue Befehle werden zu Verzeichnissen in . hinzugefügt Weg während Sie eingeloggt sind.
Mit Autoreshash, wird automatisch ein neuer Befehl gefunden, außer im Spezial
Fall, in dem ein anderer Befehl mit demselben Namen, der sich in einem anderen befindet,
Verzeichnis existiert bereits in der Hashtabelle. Löscht auch den Cache von Zuhause
Verzeichnisse, die durch Tilde-Erweiterung erstellt wurden.

wiederholen zählen Befehl
Das angegebene Befehl, die den gleichen Einschränkungen unterliegt wie die Befehl in
die eine zeile if obige Anweisung wird ausgeführt zählen mal. E/A-Umleitungen treten auf
genau einmal, auch wenn zählen ist 0.

Wurzelknoten //Knotenname (+)
Ändert den Rootnode in //Knotenname, sodass `/' interpretiert wird als
`//Knotenname'. (nur Domain/Betriebssystem)

einplanen (+)
einplanen [+]hh: mm Befehl (+)
einplanen -n (+)
Das erste Formular druckt die Liste der geplanten Ereignisse. Der einplanen Shell-Variable kann sein
festgelegt, um das Format zu definieren, in dem die Liste der geplanten Ereignisse gedruckt wird. Der Zweite
Formular fügt hinzu Befehl zur Liste der geplanten Veranstaltungen. Beispielsweise,

> Sched 11:00 echo Es ist elf Uhr.

bringt die Shell zum Echo `Es ist elf Uhr.' um 11 Uhr. Die Zeit kann in sein
12-Stunden-AM/PM-Format

> sched 5:5 set prompt='[%h] Es ist nach XNUMX; geh nach Hause: >'

oder kann sich auf die aktuelle Zeit beziehen:

> sched +2:15 /usr/lib/uucp/uucico -r1 -sother

Eine relative Zeitangabe darf nicht das AM/PM-Format verwenden. Die dritte Form entfernt
ausgleichen n aus der Veranstaltungsliste:

> planen
1 Mi 4. April 15:42 /usr/lib/uucp/uucico -r1 -sother
2 Mi 4. April 17:00 set prompt=[%h] Es ist nach 5; nach Hause gehen: >
> sched -2
> planen
1 Mi 4. April 15:42 /usr/lib/uucp/uucico -r1 -sother

Ein Befehl in der Liste der geplanten Ereignisse wird ausgeführt, kurz bevor die erste Eingabeaufforderung angezeigt wird
gedruckt nach der Zeit, zu der der Befehl geplant ist. Es ist möglich, die zu verpassen
genaue Uhrzeit, zu der der Befehl ausgeführt werden soll, aber ein überfälliger Befehl wird ausgeführt um
die nächste Aufforderung. Ein Befehl, der fällig wird, während die Shell auf den Benutzer wartet
Eingaben werden sofort ausgeführt. Normalbetrieb eines bereits laufenden
Befehl wird nicht unterbrochen, damit ein Listenelement für geplante Ereignisse ausgeführt werden kann.

Dieser Mechanismus ist ähnlich, aber nicht identisch mit dem at(1) Befehl auf einigen Unix
Systeme. Sein größter Nachteil besteht darin, dass es einen Befehl möglicherweise nicht genau an der
angegebene Zeit. Sein großer Vorteil ist, dass, weil einplanen läuft direkt vom
Shell hat es Zugriff auf Shell-Variablen und andere Strukturen. Dies bietet eine
Mechanismus zur Änderung der Arbeitsumgebung je nach Tageszeit.

kompensieren
kompensieren Name ...
kompensieren Name=Wort ...
kompensieren [-R] [-f|-l] Name=(Wortliste) ... (+)
kompensieren Name[index]=Wort ...
kompensieren -r (+)
kompensieren -r Name ... (+)
kompensieren -r Name=Wort ... (+)
Die erste Form des Befehls gibt den Wert aller Shell-Variablen aus. Variablen
die mehr als ein einzelnes Wort enthalten, werden als Wortliste in Klammern gedruckt. Der
Zweitformsätze Name zum Nullstring. Die dritte Form setzt Name zur Single
Wort. Die vierte Form setzt Name zur Wortliste in Wortliste. Auf alle Fälle
der Wert ist Befehl und Dateiname erweitert. Wenn -r angegeben ist, ist der Wert gesetzt
schreibgeschützt. Wenn -f or -l angegeben werden, legen Sie nur eindeutige Wörter fest, die ihre Reihenfolge beibehalten.
-f bevorzugt das erste Vorkommen eines Wortes und -l das Letzte. Die fünfte Form setzt
die Index'te Komponente von Name zu Wort; Diese Komponente muss bereits vorhanden sein. Der
Die sechste Form listet nur die Namen aller Shell-Variablen auf, die schreibgeschützt sind. Der
siebte Form macht Name schreibgeschützt, unabhängig davon, ob es einen Wert hat oder nicht. Die achte Form
ist das gleiche wie die dritte Form, aber mach Name gleichzeitig schreibgeschützt.

Diese Argumente können wiederholt werden, um mehrere Variablen in zu setzen und/oder schreibgeschützt zu machen
ein einzelner Satzbefehl. Beachten Sie jedoch, dass die Variablenexpansion für alle auftritt
Argumente, bevor eine Einstellung vorgenommen wird. Beachten Sie auch, dass `=' neben beiden stehen kann
Name und Wort oder von beiden durch Leerzeichen getrennt, aber nicht nur benachbart sein
Das Eine oder das Andere. Siehe auch die ungesetzt eingebauter Befehl.

settenv [Name [Wert]]
Gibt ohne Argumente die Namen und Werte aller Umgebungsvariablen aus.
Gegeben Name, setzt die Umgebungsvariable Name zu Wert oder, ohne Wert, zum
Null-String.

Pfad festlegen Weg (+)
Gleichwertig Pfad festlegen(1). (nur Mach)

setpfad LOKAL|site|CPU ... (+)
Legt den Systemausführungspfad fest. (nur TCF)

Einst Kappe Wert (+)
Teilt der Shell mit, dass sie glauben soll, dass die Terminalfähigkeit Kappe (wie definiert in
termcap(5)) hat den Wert Wert. Es wird keine Sanitätsprüfung durchgeführt. Konzeptterminal
Benutzer müssen möglicherweise `setc xn no' eingeben, um einen korrekten Zeilenumbruch in der Spalte ganz rechts zu erhalten.

setty [-d|-q|-x] [-a] [[+|-]Modus] (+)
Steuert, welche tty-Modi (siehe Terminal Management) die Schale lässt es nicht zu
zu navigieren. -d, -q or -x erzählt setty auf den `edit'-, `quote'- oder 'execute'-Satz reagieren
von tty-Modi; ohne -d, -q or -x, `ausführen' wird verwendet.

Ohne andere Argumente, setty listet die Modi im ausgewählten Set auf, die fest sind
ein (`+mode') oder aus (`-mode'). Die verfügbaren Modi und damit die Anzeige variieren
von System zu System. Mit -a, listet alle tty-Modi im ausgewählten Set auf, ob oder
nicht sie sind fest. Mit +Modus, -Modus or Modus, behebt Modus ein oder aus oder entfernt
Kontrolle von Modus im gewählten Set. Zum Beispiel behebt `setty +echok echoe'
`echok'-Modus ein und ermöglicht es Befehlen, den `Echo'-Modus ein- oder auszuschalten, sowohl wenn die
Shell führt Befehle aus.

setxvers [Schnur] (+)
Setzen Sie das Präfix der experimentellen Version auf Schnur, oder entfernt es, wenn Schnur wurde weggelassen.
(nur TCF)

verschieben [Variable]
Ohne Argumente, verwirft argv[1] und verschiebt die Mitglieder von argv nach links.
Es ist ein Fehler für argv nicht gesetzt werden oder weniger als ein Wort als Wert haben.
Mit Variable, führt die gleiche Funktion auf Variable.

Quelle [-h] Name [args ...]
Die Shell liest und führt Befehle aus von Name. Die Befehle werden nicht platziert auf
die Historienliste. Wenn überhaupt args gegeben sind, werden sie platziert in argv. (+) Quelle
Befehle können verschachtelt sein; wenn sie zu tief verschachtelt sind, kann die Schale ausgehen
Dateideskriptoren. Ein Fehler in a Quelle auf jeder Ebene beendet alle verschachtelten Quelle
Befehle. Mit -h, Befehle werden in der Verlaufsliste platziert, anstatt zu sein
ausgeführt, ähnlich wie `history -L'.

halt %Job|pid ...
Stoppt die angegebenen Jobs oder Prozesse, die im Hintergrund ausgeführt werden. Job
kann eine Zahl, ein String, `', `%', `+' oder `-' sein, wie unter . beschrieben Jobs. Es gibt
kein Standard Job; Wenn Sie nur `Stopp' sagen, wird der aktuelle Job nicht beendet.

aussetzen Bewirkt, dass die Granate in ihren Bahnen anhält, als ob ihr ein Stoppsignal gesendet worden wäre
mit ^Z. Dies wird am häufigsten verwendet, um Shells zu stoppen, die von . gestartet wurden su(1).

wechseln (Schnur)
Häuser str1:
...
brichtw
...
Standard:
...
brichtw
endet Jedes Falllabel wird nacheinander mit dem angegebenen abgeglichen Schnur welches ist
erster Befehl und Dateiname erweitert. Die Datei-Metazeichen `*', `?' und `[...]'
können in Fallbezeichnungen verwendet werden, die variabel erweitert werden. Wenn keiner von
Labels stimmen überein, bevor ein `default'-Label gefunden wird, dann beginnt die Ausführung danach
das Standardlabel. Jedes Fall-Label und das Standard-Label müssen am
Anfang einer Zeile. Der Befehl brichtw bewirkt, dass die Ausführung nach dem
endet. Andernfalls kann die Kontrolle durch Fallbezeichnungen und Standardbezeichnungen wie in C fallen.
Wenn kein Label übereinstimmt und kein Standardwert vorhanden ist, wird die Ausführung nach dem fortgesetzt endet.

Telltc (+)
Listet die Werte aller Terminalfähigkeiten auf (siehe termcap(5)).

Begriffsname [Terminal tippe] (+)
Testet, ob Terminal tippe (oder der aktuelle Wert von TERM wenn nein Terminal tippe ist gegeben)
hat einen Eintrag in den Hosts termcap(5) oder Termininfo(5) Datenbank. Druckt das Terminal
type to stdout und gibt 0 zurück, wenn ein Eintrag vorhanden ist, andernfalls wird 1 zurückgegeben.

Zeit [Befehl]
Führt aus Befehl (das muss ein einfacher Befehl sein, kein Alias, eine Pipeline, a
Befehlsliste oder eine Befehlsliste in Klammern) und druckt eine Zeitzusammenfassung als
beschrieben unter Zeit Variable. Bei Bedarf wird eine zusätzliche Hülle erstellt, um
Drucken Sie die Zeitstatistik, wenn der Befehl abgeschlossen ist. Ohne Befehl, druckt a
Zeitzusammenfassung für die aktuelle Shell und ihre untergeordneten Elemente.

umask [Wert]
Setzt die Dateierstellungsmaske auf Wert, die oktal angegeben wird. Gängige Werte für
die Maske ist 002 und gewährt allen Zugriff auf die Gruppe sowie Lese- und Ausführungszugriff auf
andere und 022, wodurch Lese- und Ausführungszugriff auf die Gruppe und andere gewährt wird. Ohne
Wert, druckt die aktuelle Dateierstellungsmaske.

Unalias Anleitungen
Entfernt alle Aliase, deren Namen übereinstimmen Anleitungen. `unalias *' entfernt also alle
Decknamen. Es ist kein Fehler, nichts zu sein Unaliased..

unvollständig Anleitungen (+)
Entfernt alle Vervollständigungen, deren Namen übereinstimmen Anleitungen. `unvollständig *' entfernt also
alle Abschlüsse. Es ist kein Fehler, nichts zu sein unvollständigd.

aufheben Deaktiviert die Verwendung der internen Hash-Tabelle, um die Suche nach ausgeführten Programmen zu beschleunigen.

Universum Universum (+)
Setzt das Universum auf Universum. (nur Masscomp/RTU)

unbegrenzt [-hf] [Ressourcen]
Entfernt die Einschränkung auf Ressourcen oder wenn nein Ressourcen angegeben ist, alle Ressourcen
Einschränkungen. Mit -h, werden die entsprechenden harten Grenzen entfernt. Nur die Super-
Benutzer kann dies tun. Beachten Sie, dass unbegrenzt wird möglicherweise nicht erfolgreich beendet, da die meisten Systeme
nicht zulassen Beschreibungen unbegrenzt sein. Mit -f Fehler werden ignoriert.

ungesetzt Anleitungen
Entfernt alle Variablen, deren Namen übereinstimmen Anleitungen, es sei denn, sie sind schreibgeschützt.
`unset *' entfernt daher alle Variablen, es sei denn, sie sind schreibgeschützt; das ist schlecht
Idee. Es ist kein Fehler, nichts zu sein ungesetzt.

unsetv Anleitungen
Entfernt alle Umgebungsvariablen, deren Namen übereinstimmen Anleitungen. `unsetenv *' also
entfernt alle Umgebungsvariablen; das ist eine schlechte idee. Es ist kein Fehler für
nichts zu sein unsetved..

sehen [Systemtyp [Befehl]] (+)
Ohne Argumente druckt SYSTYP. Mit Systemtyp, Sätze SYSTYP zu Systemtyp. Mit
Systemtyp und Befehl, führt aus Befehl für Systemtyp. Systemtyp kann `bsd4.3' oder . sein
`sys5.3'. (nur Domain/Betriebssystem)

warten Die Shell wartet auf alle Hintergrundjobs. Wenn die Shell interaktiv ist,
Interrupt unterbricht das Warten und veranlasst die Shell, die Namen und den Job zu drucken
Anzahl aller offenen Stellen.

verziehen Universum (+)
Setzt das Universum auf Universum. (Nur konvex/OS)

Watchlog (+)
Ein alternativer Name für die Log eingebauter Befehl (qv). Nur verfügbar, wenn die Schale
wurde so zusammengestellt; sieh das Version Shell-Variable.

woher Befehl (+)
Meldet alle bekannten Fälle von Befehl, einschließlich Aliasnamen, Builtins und
ausführbare Dateien in Weg.

welche Befehl (+)
Zeigt den Befehl an, der von der Shell nach Ersetzungen ausgeführt wird, Weg
Suchen usw. Der eingebaute Befehl ist genau wie welche(1), aber richtig
Berichte tcsh Aliase und Builtins und ist 10- bis 100-mal schneller. Siehe auch die
welcher-Befehl Editor-Befehl.

und gleichzeitig die (ausdr)
...
Ende Führt die Befehle zwischen den und gleichzeitig die und das Matching Ende und gleichzeitig die ausdr (ein
Ausdruck, wie unter . beschrieben Ausdrücke) wertet ungleich Null aus. und gleichzeitig die und Ende
müssen allein in ihren Eingabezeilen erscheinen. brechen und fortsetzen kann verwendet werden, um
die Schleife vorzeitig beenden oder fortsetzen. Wenn die Eingabe ein Terminal ist, wird der Benutzer
wird beim ersten Mal wie bei durch die Schleife geführt foreach.

Spezial Aliase (+)
Wenn gesetzt, wird jeder dieser Aliase automatisch zur angegebenen Zeit ausgeführt. Sie sind alle
zunächst undefiniert.

beepcmd Wird ausgeführt, wenn die Shell die Terminalglocke läuten möchte.

cwdcmd Wird nach jeder Änderung des Arbeitsverzeichnisses ausgeführt. Zum Beispiel, wenn der Benutzer arbeitet
auf einem X-Window-System mit Xterm(1) und ein Fenstermanager zum erneuten Elternieren, der
unterstützt Titelleisten wie TWM(1) und tut

> Alias ​​cwdcmd 'echo -n "^[]2;${HOST}:$cwd ^G"'

dann ändert die Shell den Titel des Laufs Xterm(1) der Name des sein
host, einen Doppelpunkt und das vollständige aktuelle Arbeitsverzeichnis. Eine schickere Art, das zu tun
is

> Alias ​​cwdcmd 'echo -n "^[]2;${HOST}:$cwd^G^[]1;${HOST}^G"'

Dadurch werden der Hostname und das Arbeitsverzeichnis in der Titelleiste angezeigt, aber nur die
Hostname im Icon-Manager-Menü.

Beachten Sie, dass das Setzen von a cd, pushd or popd in cwdcmd kann eine Endlosschleife verursachen. es ist
die Meinung des Autors, dass jeder, der dies tut, bekommt, was er verdient.

jobcmd Wird ausgeführt, bevor jeder Befehl ausgeführt wird oder wenn der Befehl seinen Status ändert. Dies
ähnelt postcmd, aber es druckt keine Built-Ins.

> Alias ​​jobcmd 'echo -n "^[]2\;\!#:q^G"'

dann ausführen vi foo.c fügt die Befehlszeichenfolge in die xterm-Titelleiste ein.

Hilfebefehl
Beschworen von der Laufhilfe Editor-Befehl. Der Befehlsname, für den Hilfe gesucht wird
wird als einziges Argument übergeben. Zum Beispiel, wenn man es tut

> alias helpcommand '\!:1 --help'

dann wird die Hilfeanzeige des Befehls selbst aufgerufen, indem die GNU-Hilfe verwendet wird
Konvention aufrufen. Derzeit gibt es keine einfache Möglichkeit, verschiedene Anrufe zu berücksichtigen
Konventionen (zB das übliche Unix `-h'), außer durch die Verwendung einer Tabelle mit vielen
Befehle.

periodisch
Läuft jeden tperiode Protokoll. Dies bietet eine bequeme Möglichkeit zum Einchecken
häufige, aber seltene Änderungen, z. B. neue E-Mails. Zum Beispiel, wenn man es tut

> setze tperiode = 30
> alias periodische checknews

dann ist die checknews(1) Programm läuft alle 30 Minuten. Wenn periodisch ist eingestellt aber
tperiode nicht gesetzt oder auf 0 gesetzt ist, periodisch benimmt sich wie vorbef.

vorbef Wird ausgeführt, kurz bevor jede Eingabeaufforderung gedruckt wird. Zum Beispiel, wenn man es tut

> Alias-Precmd-Datum

dann Datum(1) wird ausgeführt, kurz bevor die Shell für jeden Befehl auffordert. Es gibt keine
Grenzen für was vorbef kann eingestellt werden, aber es sollte Diskretion verwendet werden.

postcmd Wird ausgeführt, bevor jeder Befehl ausgeführt wird.

> Alias ​​postcmd 'echo -n "^[]2\;\!#:q^G"'

dann ausführen vi foo.c fügt die Befehlszeichenfolge in die xterm-Titelleiste ein.

Schale Gibt den Interpreter für ausführbare Skripte an, die selbst keine Angabe machen
ein Dolmetscher. Das erste Wort sollte ein vollständiger Pfadname zum gewünschten sein
Interpreter (zB `/bin/csh' oder `/usr/local/bin/tcsh').

Spezial Schale Variablen
Die in diesem Abschnitt beschriebenen Variablen haben eine besondere Bedeutung für die Shell.

Die Muschelsätze Zusatzsuffix, argv, Autologout, csubstnonl, Befehl, echo_stil, bearbeiten, gid,
Gruppe, Startseite, Loginsh, verwandt, Weg, Eingabeaufforderung, Eingabeaufforderung2, Eingabeaufforderung3, Schale, schlvl, tcsh, Begriff, tty,
uid, Benutzer und Version am Anfang; sie ändern sich danach nicht mehr, es sei denn, sie werden vom geändert
Nutzer. Die Shell-Updates cwd, Dirstack, ach und Status bei Bedarf und setzt Abmeldung on
Ausloggen.

Die Shell synchronisiert Gruppe, Startseite, Weg, schlvl, Begriff und Benutzer mit der Umwelt
Variablen gleichen Namens: Immer wenn sich die Umgebungsvariable ändert, ändert sich die Shell
die entsprechende Shell-Variable zum Abgleichen (es sei denn, die Shell-Variable ist schreibgeschützt) und
und umgekehrt. Beachten Sie, dass obwohl cwd und PWD haben identische Bedeutungen, sie sind es nicht
auf diese Weise synchronisiert werden und die Shell die verschiedenen
Formate von Weg und PATH.

Zusatzsuffix (+)
Wenn gesetzt, fügt die Vervollständigung des Dateinamens `/' an das Ende von Verzeichnissen und ein Leerzeichen an die
Ende normaler Dateien, wenn sie genau übereinstimmen. Standardmäßig eingestellt.

Afsuser (+)
Wenn eingestellt, Autologout's Autolock-Funktion verwendet seinen Wert anstelle des lokalen Benutzernamens
für die Kerberos-Authentifizierung.

ampm (+)
Wenn eingestellt, werden alle Zeiten im 12-Stunden-AM/PM-Format angezeigt.

argv Die Argumente für die Shell. Positionsparameter werden entnommen aus argv, dh `$1'
wird ersetzt durch `$argv[1]' usw. Standardmäßig gesetzt, aber normalerweise leer im interaktiven
Muscheln.

Autokorrektur (+)
Wenn eingestellt, wird die Zauberwort Editor-Befehl wird automatisch vor jedem aufgerufen
Abschlussversuch.

automatisch erweitern (+)
Wenn eingestellt, wird die Erweitern-Geschichte Editor-Befehl wird automatisch vor jedem aufgerufen
Abschlussversuch. Wenn dies auf eingestellt ist nurGeschichte, dann wird nur geschichte sein
erweitert und eine zweite Vervollständigung erweitert die Dateinamen.

Autoliste (+)
Wenn gesetzt, werden Möglichkeiten nach mehrdeutiger Vervollständigung aufgelistet. Wenn auf eingestellt
`mehrdeutig', Möglichkeiten werden nur aufgelistet, wenn keine neuen Zeichen hinzugefügt werden von
Fertigstellung.

Autologout (+)
Das erste Wort ist die Anzahl der Minuten der Inaktivität vor der automatischen Abmeldung.
Das optionale zweite Wort ist die Anzahl der Minuten der Inaktivität vor der automatischen
sperren. Wenn sich die Shell automatisch abmeldet, druckt sie `auto-logout', setzt die
Variable Abmeldung auf `automatisch' und beendet. Wenn die Shell automatisch gesperrt wird, wird die
Der Benutzer muss sein Passwort eingeben, um weiterarbeiten zu können. Fünf falsche
Versuche führen zur automatischen Abmeldung. Auf '60' setzen (automatische Abmeldung nach 60
Minuten und kein Sperren) standardmäßig in Login- und Superuser-Shells, aber nicht, wenn die
Shell denkt, dass sie unter einem Windows-System läuft (dh die DISPLAY -Umgebung
Variable ist gesetzt), das tty ist ein Pseudo-tty (pty) oder die Shell wurde nicht so kompiliert
(Siehe Version Shellvariable). Siehe auch die Afsuser und Abmeldung Schale
Variablen.

Autoreshash (+)
Falls gesetzt, wird die interne Hash-Tabelle des Inhalts der Verzeichnisse im Weg
Variable wird neu berechnet, wenn ein Befehl in der Hash-Tabelle nicht gefunden wird. In
Außerdem wird die Liste der verfügbaren Befehle für jeden Befehl neu erstellt
Vervollständigungs- oder Rechtschreibkorrekturversuch, wenn auf `vollständig' oder `korrigiert' gesetzt
bzw; wenn auf `always' gesetzt, wird dies in beiden Fällen durchgeführt.

Backslash_Zitat (+)
Falls gesetzt, zitieren Backslashes (`\') immer `\', `'' und `"'. Dies kann komplex werden
Aufgaben leichter zitieren, aber es kann zu Syntaxfehlern in csh(1) Skripte.

Katalog Der Dateiname des Nachrichtenkatalogs. Wenn gesetzt, verwendet tcsh `tcsh.${catalog}' als
Nachrichtenkatalog statt Standard `tcsh'.

CD-Pfad Eine Liste von Verzeichnissen, in denen cd sollte nach Unterverzeichnissen suchen, wenn dies nicht der Fall ist
im aktuellen Verzeichnis gefunden.

Farbe Wenn gesetzt, aktiviert es die Farbanzeige für das eingebaute ls-F und es geht vorbei --color=automatisch
zu ls. Alternativ kann es auf nur eingestellt werden ls-F oder nur ls um Farbe zu aktivieren
nur ein Befehl. Das Einstellen auf nichts ist gleichbedeutend mit dem Einstellen auf (ls-F ls).

Farbkatze
Wenn gesetzt, aktiviert es die Farb-Escape-Sequenz für NLS-Nachrichtendateien. Und anzeigen
bunte NLS-Nachrichten.

Befehl (+)
Wenn gesetzt, der Befehl, der mit dem an die Shell übergeben wurde -c Flagge (siehe).

kompatibel_expr (+)
Wenn gesetzt, wertet die Shell Ausdrücke von rechts nach links aus, wie das Original csh.

gesamten (+)
Wenn auf `igncase' gesetzt, wird bei der Vervollständigung die Groß-/Kleinschreibung nicht beachtet. Wenn auf eingestellt
`erhöhen', Vervollständigung ignoriert Groß-/Kleinschreibung und betrachtet Bindestriche und Unterstriche als
gleichwertig; es werden auch Punkte, Bindestriche und Unterstriche (`.', `-' und `_') behandelt.
als Worttrenner. Bei Einstellung auf "Verbessern" entspricht die Vervollständigung Großbuchstaben und
Unterstreiche Zeichen explizit und stimmt mit Kleinbuchstaben und Bindestrichen in Groß-/Kleinschreibung überein.
unempfindliche Art; es behandelt Punkte, Bindestriche und Unterstriche als Wort
Trennzeichen.

fortsetzen (+)
Wenn eine Liste von Befehlen eingestellt ist, setzt die Shell stattdessen die aufgelisteten Befehle fort
einen neuen zu beginnen.

weiter_args (+)
Wie bei continue, aber die Shell wird ausgeführt:

echo `pwd` $argv > ~ /._Pause; %

und beseitigen Muskelschwäche (+)
Wenn auf `cmd' gesetzt, werden Befehle automatisch buchstabiert. Wenn auf eingestellt
`complete', Befehle werden automatisch abgeschlossen. Wenn auf 'all' gesetzt, wird das gesamte
Kommandozeile wird korrigiert.

csubstnonl (+)
Wenn gesetzt, werden Zeilenumbrüche und Wagenrückläufe bei der Befehlsersetzung ersetzt durch
Räume. Standardmäßig eingestellt.

cwd Der vollständige Pfadname des aktuellen Verzeichnisses. Siehe auch die Dirstack und ach Schale
Variablen.

extrahieren (+)
Wenn gesetzt, `pushd +n' extrahiert die nVerzeichnis aus dem Verzeichnis-Stack statt
nach oben drehen.

dirsfile (+)
Der Standardspeicherort, in dem `dirs -S' und `dirs -L' nach einer Verlaufsdatei suchen. Wenn
unscharf, ~/.cshdirs wird genutzt. Denn nur ~/.tcshrc wird normalerweise vorher bezogen
~/.cshdirs, dirsfile sollte eingebaut werden ~/.tcshrc statt ~/.login.

Dirstack (+)
Ein Array aller Verzeichnisse im Verzeichnisstapel. `$dirstack[1]' ist der
aktuelles Arbeitsverzeichnis, `$dirstack[2]' das erste Verzeichnis auf dem Stack usw.
Beachten Sie, dass das aktuelle Arbeitsverzeichnis `$dirstack[1]' ist, aber `=0' im Verzeichnis
Stack-Ersetzungen usw. Man kann den Stack beliebig ändern, indem man
Dirstack, aber das erste Element (das aktuelle Arbeitsverzeichnis) ist immer korrekt.
Siehe auch die cwd und ach Shell-Variablen.

dspmbyte (+)
Hat eine Wirkung, wenn 'dspm' als Teil der Version Shell-Variable. Wenn eingestellt
zu `euc', ermöglicht es die Anzeige und Bearbeitung von EUC-Kanji-Code (japanisch). Wenn auf eingestellt
`sjis', ermöglicht die Anzeige und Bearbeitung von Shift-JIS(Japanisch)-Code. Wenn auf eingestellt
`big5', ermöglicht die Anzeige und Bearbeitung von Big5(chinesisch)-Code. Wenn auf `utf8' gesetzt, wird es
ermöglicht die Anzeige und Bearbeitung von Utf8(Unicode)-Code. Wenn das folgende Format eingestellt ist,
es ermöglicht die Anzeige und Bearbeitung des ursprünglichen Multibyte-Codeformats:

> setze dspmbyte = 0000....(256 Byte)....0000

Die Tabelle erfordert nur 256 Byte. Jedes Zeichen von 256 Zeichen entspricht
(von links nach rechts) in die ASCII-Codes 0x00, 0x01, ... 0xff. Jeder Charakter ist
auf die Nummern 0,1,2 und 3 setzen. Jede Nummer hat folgende Bedeutung:
0 ... nicht für Multi-Byte-Zeichen verwendet.
1 ... wird für das erste Byte eines Multibyte-Zeichens verwendet.
2 ... wird für das zweite Byte eines Multibyte-Zeichens verwendet.
3 ... wird sowohl für das erste Byte als auch für das zweite Byte eines Multi-Byte-Zeichens verwendet.

Ejemplo:
Wenn auf `001322' gesetzt, das erste Zeichen (bedeutet 0x00 des ASCII-Codes) und das zweite
Zeichen (bedeutet 0x01 des ASCII-Codes) werden auf `0' gesetzt. Dann wird es nicht verwendet für
Multibyte-Zeichen. Das 3. Zeichen (0x02) wird auf '1' gesetzt, was darauf hinweist, dass es
wird für das erste Byte eines Multi-Byte-Zeichens verwendet. Der 4. Charakter(0x03) ist
'3' einstellen. Es wird sowohl für das erste Byte als auch für das zweite Byte eines Multibytes verwendet
Charakter. Das 5. und 6. Zeichen (0x04,0x05) werden auf '2' gesetzt, was darauf hinweist, dass
sie werden für das zweite Byte eines Multibyte-Zeichens verwendet.

Die GNU fileutils-Version von ls kann keine Multi-Byte-Dateinamen ohne das -N . anzeigen
( --literal ) Option. Wenn Sie diese Version verwenden, legen Sie das zweite Wort von fest
dspmbyte in "ls". Wenn nicht, kann "ls-F -l" beispielsweise kein Multibyte anzeigen
Dateinamen.

Hinweis:
Diese Variable kann nur verwendet werden, wenn KANJI und DSPMBYTE beim Kompilieren definiert wurden
Zeit.

Dunique (+)
Wenn eingestellt, pushd entfernt alle Instanzen von Name vom Stapel, bevor Sie ihn aufschieben
den Stack.

Echo Wenn gesetzt, wird jeder Befehl mit seinen Argumenten direkt vor der Ausführung als Echo ausgegeben. Für
nicht eingebaute Befehle Alle Erweiterungen erfolgen vor dem Echo. Eingebaute Befehle sind
vor der Ersetzung des Befehls und des Dateinamens wiederholt, da diese Ersetzungen
dann selektiv gemacht. Eingestellt von der -x Befehlszeilenoption.

echo_stil (+)
Der Stil der Echo eingebaut. Kann eingestellt werden auf

bsd Gibt keinen Zeilenumbruch aus, wenn das erste Argument `-n' ist.
sysv Erkennt Escape-Sequenzen mit umgekehrtem Schrägstrich in Echo-Strings.
beide Erkennt sowohl das Flag `-n' als auch Escape-Sequenzen mit umgekehrtem Schrägstrich; das
default.
keine Erkenne auch nicht.

Standardmäßig auf den lokalen Systemstandard eingestellt. Die BSD- und System V-Optionen sind
Beschrieben in der Echo(1) Manpages zu den entsprechenden Systemen.

bearbeiten (+)
Wenn festgelegt, wird der Befehlszeileneditor verwendet. In interaktiven Shells standardmäßig eingestellt.

Ellipse (+)
Wenn gesetzt, wird `%c'/`%.' und `%C'-Eingabeaufforderungssequenzen (siehe die Eingabeaufforderung Shell-Variable)
übersprungene Verzeichnisse mit Auslassungspunkten (`...') anstelle von `/ '.

euid (+)
Die effektive Benutzer-ID des Benutzers.

euser (+)
Der erste übereinstimmende passwd-Eintragsname, der der effektiven Benutzer-ID entspricht.

figurieren (+)
Listet Dateinamensuffixe auf, die bei der Vervollständigung ignoriert werden sollen.

Dateic In tcsh, wird immer die Vervollständigung verwendet und diese Variable wird standardmäßig ignoriert. Wenn
bearbeiten nicht gesetzt ist, dann ist das traditionelle csh Abschluss verwendet wird. Wenn eingestellt csh,
Dateinamenvervollständigung wird verwendet.

gid (+) Die echte Gruppen-ID des Benutzers.

globdot (+)
Wenn gesetzt, werden Platzhalter-Globmuster mit Dateien und Verzeichnissen übereinstimmen, die mit beginnen
`.' außer `.' und `..'

Kugelstern (+)
Wenn gesetzt, stimmen die Dateiglobmuster `**' und `***' mit jeder beliebigen Zeichenfolge überein
einschließlich `/', das alle vorhandenen Unterverzeichnisse durchquert. (zB `ls **.c' wird aufgelistet
alle .c-Dateien im aktuellen Verzeichnisbaum). Wenn es allein verwendet wird, wird es übereinstimmen
Übereinstimmung mit null oder mehr Unterverzeichnissen (zB `ls /usr/include/**/time.h' listet alle auf
Datei namens `time.h' im / usr / include Verzeichnisbaum; in der Erwägung, dass `l
/usr/include/**time.h' stimmt mit jeder Datei im / usr / include Verzeichnisbaum
mit der Endung `time.h'). Um Rekursionsprobleme zu vermeiden, wird das `**'-Glob-Muster
wird nicht in einen symbolischen Link absteigen, der ein Verzeichnis enthält. Um dies zu überschreiben,
benutze `***'

Gruppe (+)
Der Gruppenname des Benutzers.

hervorheben
Wenn gesetzt, wird die inkrementelle Suchübereinstimmung (in ich-suche-zurück und i-Suche-fwd) und das
Bereich zwischen der Markierung und dem Cursor werden invertiert hervorgehoben.

Das Hervorheben erfordert häufigere Terminal-Schreibvorgänge, wodurch zusätzliche
über Kopf. Wenn Ihnen die Terminalleistung wichtig ist, möchten Sie dies vielleicht belassen
unscharf.

histchars
Ein Zeichenfolgenwert, der die in verwendeten Zeichen bestimmt Geschichte Substitution (siehe).
Das erste Zeichen seines Wertes wird als History-Ersetzungszeichen verwendet.
Ersetzen des Standardzeichens `!'. Das zweite Zeichen seines Wertes ersetzt
das Zeichen `^' in schnellen Ersetzungen.

histdup (+)
Steuert den Umgang mit doppelten Einträgen in der Verlaufsliste. Wenn nur auf "alle" gesetzt
einmalige historische Ereignisse werden in die Verlaufsliste eingetragen. Wenn auf `prev' gesetzt und die
letztes Verlaufsereignis ist das gleiche wie der aktuelle Befehl, dann ist der aktuelle Befehl
nicht in die Historie eingetragen. Wenn auf `erase' gesetzt und das gleiche Ereignis im
Verlaufsliste wird das alte Ereignis gelöscht und das aktuelle eingefügt. Notiz
dass die Optionen `prev' und `all' die Verlaufsereignisse neu nummerieren, damit keine Lücken entstehen.

histfile (+)
Der Standardspeicherort, an dem `history -S' und `history -L' nach einem Verlauf suchen
Datei. Wenn nicht eingestellt, ~/.Geschichte wird eingesetzt. histfile ist nützlich, wenn Sie das gleiche teilen
Home-Verzeichnis zwischen verschiedenen Rechnern oder beim Speichern separater Historien auf
verschiedene Endgeräte. Denn nur ~/.tcshrc wird normalerweise vorher bezogen
~/.Geschichte, histfile sollte eingebaut werden ~/.tcshrc statt ~/.login.

histlit (+)
Falls gesetzt, eingebaute und Editor-Befehle und die speichern Mechanismus verwenden das Literal
(unerweiterte) Zeilenform in der Verlaufsliste. Siehe auch die toggle-literal-
Geschichte Editor-Befehl.

Geschichte Das erste Wort gibt die Anzahl der zu speichernden Verlaufsereignisse an. Die Wahl
das zweite Wort (+) gibt das Format an, in dem die Historie gedruckt wird; wenn nicht gegeben,
`%h\t%T\t%R\n' wird verwendet. Die Formatabläufe sind im Folgenden unter . beschrieben Eingabeaufforderung;
Beachten Sie die variable Bedeutung von `%R'. Standardmäßig auf "100" eingestellt.

Startseite Initialisiert mit dem Home-Verzeichnis des Aufrufers. Die Dateinamenerweiterung von `~'
bezieht sich auf diese Variable.

ignorieren
Wenn auf eine leere Zeichenfolge oder '0' gesetzt und das Eingabegerät ein Terminal ist, wird die Ende des-
Datei Befehl (wird normalerweise vom Benutzer generiert, indem er `^D' in eine leere Zeile eingibt)
bewirkt, dass die Shell ausgibt `Benutze "exit", um tcsh zu verlassen.' anstatt auszusteigen. Dies
verhindert, dass die Granate versehentlich getötet wird. Historisch gesehen diese Einstellung
nach 26 aufeinanderfolgenden EOFs verlassen, um Endlosschleifen zu vermeiden. Wenn auf eine Zahl eingestellt n,
die Shell ignoriert n - 1 aufeinanderfolgenden Ende der Dateis und Ausfahrten auf der nth. (+) Wenn
unset, wird `1' verwendet, dh die Shell wird mit einem einzigen `^D' beendet.

implizit (+)
Wenn gesetzt, behandelt die Shell einen als Befehl eingegebenen Verzeichnisnamen so, als wäre er ein
Aufforderung, in dieses Verzeichnis zu wechseln. Wenn auf eingestellt ausführlich, der Verzeichniswechsel
wird an die Standardausgabe ausgegeben. Dieses Verhalten ist im nicht interaktiven Modus unterbunden
Shell-Skripte oder für Befehlszeichenfolgen mit mehr als einem Wort. Verzeichnis wechseln
hat Vorrang vor der Ausführung eines gleichnamigen Befehls, erfolgt jedoch nach alias
Substitutionen. Tilde und variable Erweiterungen funktionieren wie erwartet.

Eingabemodus (+)
Wenn auf `insert' oder `overwrite' gesetzt, versetzt der Editor in diesen Eingabemodus am
Anfang jeder Zeile.

töten (+)
Steuert den Umgang mit doppelten Einträgen im Kill-Ring. Wenn nur auf "alle" gesetzt
eindeutige Zeichenfolgen werden in den Kill-Ring eingegeben. Wenn auf `prev' gesetzt und zuletzt getötet
String ist derselbe wie der aktuell gelöschte String, dann ist der aktuelle String nicht
in den Ring getreten. Wenn auf `erase' gesetzt und die gleiche Zeichenfolge im Kill gefunden wird
ring, der alte String wird gelöscht und der aktuelle eingefügt.

tötend (+)
Gibt die Anzahl der gelöschten Zeichenfolgen an, die im Speicher aufbewahrt werden sollen. Standardmäßig auf "30" eingestellt.
Wenn es nicht gesetzt oder auf weniger als `2' gesetzt ist, behält die Shell nur die letzten
Saite getötet. Strings werden in den Killring von den Editor-Befehlen eingefügt, die löschen
(töten) Textketten, zB rückwärts-löschen-Wort, Kill-Line, usw. sowie die
Kopieren-Region-als-Kill Befehl. Das Ruck Editor-Befehl wird zuletzt gerissen
getötete Zeichenfolge in die Befehlszeile, während reißer (sehen Herausgeber Befehle) kann sein
verwendet, um früher getötete Saiten zu zerren.

Listenflaggen (+)
Wenn sie auf `x', `a' oder `A' oder eine beliebige Kombination davon (z. B. `xA') gesetzt sind, werden sie verwendet
als Fahnen zu ls-F, so dass es sich wie `ls -xF', `ls -Fa', `ls -FA' oder eine Kombination verhält
(zB `ls -FxA'): `a' zeigt alle Dateien (auch wenn sie mit `.' beginnen), `A' zeigt
alle Dateien außer `.' und `..' und `x' sortiert statt nach unten. Wenn die zweite
Wort von Listenflaggen gesetzt ist, wird es als Pfad zu ` . verwendetls(1)'.

Listenjobs (+)
Wenn gesetzt, werden alle Jobs aufgelistet, wenn ein Job angehalten wird. Bei Einstellung auf „lang“ wird die
Die Auflistung ist im Langformat.

Listenlinks (+)
Wenn eingestellt, wird die ls-F Der eingebaute Befehl zeigt den Dateityp an, zu dem jeder symbolische
Verknüpfungspunkte.

Listemax (+)
Die maximale Anzahl von Elementen, die die Listenauswahl Editor-Befehl wird aufgelistet
ohne vorher zu fragen.

listmaxrows (+)
Die maximale Anzahl von Zeilen von Elementen, die die Listenauswahl Editor-Befehl wird
Liste auf, ohne vorher zu fragen.

Loginsh (+)
Wird von der Shell gesetzt, wenn es sich um eine Login-Shell handelt. Setzen oder Entschärfen innerhalb einer Shell
hat keine Wirkung. Siehe auch schlvl.

Abmeldung (+)
Wird von der Shell auf `normal' vor einem normalen Logout gesetzt, `automatic' vor einem
automatische Abmeldung und `hangup', wenn die Shell durch ein Hangup-Signal getötet wurde (siehe
Signal Umgang). Siehe auch die Autologout Shell-Variable.

E-mail Eine Liste von Dateien und Verzeichnissen, die auf eingehende E-Mails überprüft werden sollen, optional mit vorangestelltem
ein Zahlenwort. Vor jeder Aufforderung, wenn seit der letzten 10 Minuten vergangen sind
check, die Shell prüft jede Datei und sagt `Sie haben neue E-Mails.' (oder wenn E-mail
enthält mehrere Dateien, `Sie haben neue E-Mails Name.'), wenn die Dateigröße größer ist
größer als null ist und eine Änderungszeit hat, die größer ist als ihre Zugriffszeit.

Wenn Sie sich in einer Login-Shell befinden, wird keine E-Mail-Datei gemeldet, es sei denn, dies wurde
nach dem Start der Shell geändert werden, um Redundanz zu vermeiden
Benachrichtigungen. Die meisten Login-Programme werden Ihnen sagen, ob Sie E-Mails haben oder nicht
wenn Sie sich einloggen.

Wenn eine in angegebene Datei E-mail ein Verzeichnis ist, zählt die Shell jede darin enthaltene Datei
dieses Verzeichnis als separate Nachricht und meldet `Sie haben n Mails.' oder `Du
haben n Mails rein Name.' wie angemessen. Diese Funktionalität wird hauptsächlich bereitgestellt
für Systeme, die Post auf diese Weise speichern, wie das Andrew Mail System.

Wenn das erste Wort von E-mail ist numerisch, es wird als eine andere E-Mail-Prüfung verwendet
Intervall in Sekunden.

Unter sehr seltenen Umständen meldet die Shell möglicherweise `Sie haben E-Mail.' anstatt
"Sie haben neue Post."

Matchbeep (+)
Wenn `nie' eingestellt ist, ertönt kein Abschluss. Wenn auf `nomatch' gesetzt, piept es nur
wenn es keine Übereinstimmung gibt. Wenn auf "mehrdeutig" gesetzt, piept es, wenn mehrere vorhanden sind
Streichhölzer. Wenn es auf `notunique' gesetzt ist, piept es, wenn es einen genauen gibt und ein anderer länger
Streichhölzer. Wenn nicht gesetzt, wird `mehrdeutig' verwendet.

kein piep (+)
Wenn eingestellt, ist das Piepen vollständig deaktiviert. Siehe auch sichtbare Glocke.

noclobber
Falls gesetzt, wird die Ausgabeumleitung eingeschränkt, um sicherzustellen, dass Dateien nicht
versehentlich zerstört und dass `>>'-Umleitungen auf vorhandene Dateien verweisen, da
Beschrieben in der Eingabe / Ausgabe- .

nicken Falls gesetzt, deaktivieren Sie das Drucken von `DING!' in dem Eingabeaufforderung Zeitangaben bei der
Stundenwechsel.

noglob Wenn eingestellt, Dateiname Substitution und Verzeichnis Stapel Substitution (qv) sind
gehemmt. Dies ist am nützlichsten in Shell-Skripten, die nicht mit Dateinamen umgehen,
oder nachdem eine Liste von Dateinamen erhalten wurde und weitere Erweiterungen nicht möglich sind
wünschenswert.

nokanji (+)
Wenn gesetzt und die Shell Kanji unterstützt (siehe Version Shell-Variable), ist es
deaktiviert, damit der Metaschlüssel verwendet werden kann.

Nichtübereinstimmung
Wenn gesetzt, a Dateiname Substitution or Verzeichnis Stapel Substitution (qv) was tut
nicht mit vorhandenen Dateien übereinstimmen, bleibt unberührt, anstatt einen Fehler zu verursachen. Es
ist immer noch ein Fehler für die fehlerhafte Substitution, zB `echo [' gibt immer noch
ein Fehler.

nostat (+)
Eine Liste von Verzeichnissen (oder Glob-Mustern, die mit Verzeichnissen übereinstimmen; siehe Dateiname
Substitution) das sollte nicht sein Zustand(2) während einer Abschlussoperation. Das ist
Wird normalerweise verwendet, um Verzeichnisse auszuschließen, die zu lange brauchen Zustand(2), z
Beispiel /afs.

benachrichtigen Wenn gesetzt, kündigt die Shell Job-Abschlüsse asynchron an. Die Standardeinstellung ist zu
Job-Abschlüsse unmittelbar vor dem Drucken einer Eingabeaufforderung präsentieren.

verwandt (+) Die echte Organisations-ID des Benutzers. (nur Domain/Betriebssystem)

ach (+) Das alte Arbeitsverzeichnis, das dem `-' entspricht, das von . verwendet wird cd und pushd. Siehe auch
die cwd und Dirstack Shell-Variablen.

Padhour Wenn eingestellt, aktivieren Sie das Drucken des Auffüllens '0' für Stunden im 24- und 12-Stunden-Format.
ZB: 07:45:42 vs. 7:45:42.

Parseoktal
Um mit älteren Versionen kompatibel zu bleiben, sind numerische Variablen, die mit 0 beginnen,
nicht als Oktal interpretiert. Das Festlegen dieser Variable ermöglicht eine ordnungsgemäße Oktalanalyse.

Weg Eine Liste von Verzeichnissen, in denen nach ausführbaren Befehlen gesucht werden soll. Ein Nullwort
gibt das aktuelle Verzeichnis an. Wenn es keine gibt Weg variabel dann nur voller Pfad
Namen ausgeführt werden. Weg wird von der Shell beim Start vom PATH -Umgebung
variabel oder, wenn PATH nicht existiert, auf eine systembedingte Vorgabe so etwas wie
`(/ usr / local / bin /usr/bsd /Behälter / usr / bin .)“. Die Shell kann `.' erster oder letzter
in Weg oder ganz weglassen, je nachdem, wie es kompiliert wurde; sieh das Version
Shell-Variable. Eine Schale, die weder die -c noch das -t Options-Hashes
der Inhalt der Verzeichnisse in Weg nach dem Lesen ~/.tcshrc und jedes mal Weg
wird zurückgesetzt. Wenn man einen neuen Befehl zu einem Verzeichnis in . hinzufügt Weg während die Schale ist
aktiv, muss man möglicherweise a aufwärmen damit die Shell es findet.

printexit-Wert (+)
Wenn gesetzt und ein interaktives Programm mit einem Status ungleich Null beendet wird, druckt die Shell
`Beenden Status'.

Eingabeaufforderung Die Zeichenfolge, die vor dem Lesen jedes Befehls vom Terminal ausgegeben wird. Eingabeaufforderung
kann eine der folgenden Formatierungssequenzen (+) enthalten, die durch ersetzt werden
die angegebenen Informationen:

%/ Das aktuelle Arbeitsverzeichnis.
%~ Das aktuelle Arbeitsverzeichnis, aber mit dem eigenen Home-Verzeichnis repräsentiert durch
`~' und die Home-Verzeichnisse anderer Benutzer, dargestellt durch `~user' gemäß Dateiname
Substitution. `~user'-Ersetzung geschieht nur, wenn die Shell bereits verwendet hat
`~Benutzer' in einem Pfadnamen in der aktuellen Sitzung.
%c[[0]n], %.[[0]n]
Die nachfolgende Komponente des aktuellen Arbeitsverzeichnisses oder n schleppend
Komponenten wenn eine Ziffer n gegeben ist. Wenn n beginnt mit `0', die Anzahl der übersprungenen
Komponenten gehen der/den nachgestellten Komponente(n) im Format voraus
`/übersprungen>schleppen'. Wenn die Ellipse Shell-Variable ist gesetzt, übersprungen
Komponenten werden durch Auslassungspunkte dargestellt, so dass das Ganze `...nachfolgend' wird.
Die `~'-Ersetzung erfolgt wie in `%~' oben, aber die `~'-Komponente wird ignoriert
beim Zählen nachlaufender Komponenten.
%C Wie %c, aber ohne `~'-Ersetzung.
%H, %!, !
Die aktuelle Verlaufsereignisnummer.
%M Der vollständige Hostname.
%m Der Hostname bis zum ersten `.'.
%S (%s)
Standout-Modus starten (stoppen).
%B (%b)
Fettdruckmodus starten (stoppen).
%U (%u)
Unterstreichungsmodus starten (stoppen).
%T, %@
Die Tageszeit im 12-Stunden-AM/PM-Format.
%T Wie `%t', jedoch im 24-Stunden-Format (aber siehe ampm Shellvariable).
%p Die `genaue' Tageszeit im 12-Stunden-AM/PM-Format mit Sekunden.
%P Wie `%p', jedoch im 24-Stunden-Format (siehe aber die ampm Shellvariable).
\c c wird geparst wie in Bindungsschlüssel.
^c c wird geparst wie in Bindungsschlüssel.
%% Ein einzelnes `%'.
%n Der Benutzername.
%N Der effektive Benutzername.
%j Die Anzahl der Jobs.
%d Der Wochentag im `Tag'-Format.
%D Der Tag im `dd'-Format.
%w Der Monat im Format `Mon'.
%W Der Monat im `mm'-Format.
%y Das Jahr im `yy'-Format.
%Y Das Jahr im Format `yyyy'.
%l Das tty der Shell.
%L Löscht vom Ende der Eingabeaufforderung bis zum Ende der Anzeige oder dem Ende des
Linie.
%$ Erweitert den Shell- oder Umgebungsvariablennamen unmittelbar nach dem `$'.
%# `>' (oder das erste Zeichen des Aufforderungszeichen Shell-Variable) für normal
Benutzer, `#' (oder das zweite Zeichen von Aufforderungszeichen) für den Superuser.
%{Schnur%}
Enthält Schnur als wörtliche Escape-Sequenz. Es sollte nur verwendet werden, um
Terminalattribute ändern und die Cursorposition nicht verschieben. Dies
kann nicht die letzte Sequenz in sein Eingabeaufforderung.
%? Der Rückkehrcode des direkt vor der Eingabeaufforderung ausgeführten Befehls.
%R Ein Eingabeaufforderung2, den Status des Parsers. In Eingabeaufforderung3, die korrigierte Zeichenfolge. In
Geschichte, die Verlaufszeichenfolge.

`%B', `%S', `%U' und `%{Schnur%}' sind nur in XNUMX-Bit-sauberen Shells verfügbar;
finden Sie in der Version Shell-Variable.

Die fetten, herausragenden und unterstrichenen Sequenzen werden oft verwendet, um a . zu unterscheiden
Superuser-Shell. Beispielsweise,

> set prompt = "%m [%h] %B[%@]%b [%/] hast du angerufen?"
tut [37] [2:54] [/usr/accts/sys] Sie haben angerufen? _

Wenn `%t', `%@', `%T', `%p' oder `%P' verwendet wird, und nicken nicht eingestellt ist, dann drucken
`DING!' auf der Änderung der Stunde (dh `:00' Minuten) statt der tatsächlichen Uhrzeit.

In interaktiven Shells standardmäßig auf `%# ' gesetzt.

Eingabeaufforderung2 (+)
Die Zeichenfolge, mit der die Eingabe angefordert werden soll und gleichzeitig die und foreach Schleifen und nach Zeilenenden
in `\'. Es können die gleichen Formatfolgen wie in verwendet werden Eingabeaufforderung (siehe); beachten Sie das
Variable Bedeutung von `%R'. Standardmäßig auf `%R? ' in interaktiven Shells.

Eingabeaufforderung3 (+)
Die Zeichenfolge, die beim Bestätigen der automatischen Rechtschreibkorrektur angefordert werden soll.
Es können die gleichen Formatfolgen wie in verwendet werden Eingabeaufforderung (siehe); beachte die Variable
Bedeutung von `%R'. Standardmäßig auf `KORREKT>%R (y|n|e|a) gesetzt? 'im interaktiven
Muscheln.

Aufforderungszeichen (+)
Wenn festgelegt (auf eine Zeichenfolge aus zwei Zeichen), wird die Formatierungssequenz `%#' in der Eingabeaufforderung
Shell-Variable wird für normale Benutzer durch das erste Zeichen ersetzt und die
zweites Zeichen für den Superuser.

pushdtohome (+)
Wenn eingestellt, pushd ohne Argumente macht `pushd ~', wie cd.

leise (+)
Wenn eingestellt, pushd und popd den Verzeichnisstapel nicht drucken.

genau (+)
Wenn festgelegt, wird die Vervollständigung bei einer genauen Übereinstimmung abgeschlossen, auch wenn eine längere Übereinstimmung möglich ist.

erkennung_nur_ausführbare Dateien (+)
Wenn gesetzt, zeigt die Befehlsauflistung nur Dateien im Pfad an, die ausführbar sind.
Langsam.

rmstar (+)
Wenn gesetzt, wird der Benutzer aufgefordert, bevor `rm *' ausgeführt wird.

Aufforderung (+)
Die zu druckende Zeichenfolge auf der rechten Seite des Bildschirms (nach der Befehlseingabe)
wenn die Aufforderung auf der linken Seite angezeigt wird. Es erkennt die gleiche Formatierung
Zeichen als Eingabeaufforderung. Es wird automatisch ausgeblendet und bei Bedarf wieder angezeigt.
um sicherzustellen, dass die Befehlseingabe nicht verdeckt wird und nur erscheint, wenn die Eingabeaufforderung,
Befehlseingabe, und selbst wird in der ersten Zeile zusammenpassen. Wenn bearbeiten ist nicht eingestellt,
dann Aufforderung wird nach der Eingabeaufforderung und vor der Befehlseingabe gedruckt.

Retter (+)
Wenn gesetzt, führt die Shell `dirs -S' aus, bevor sie beendet wird. Wenn das erste Wort auf a . gesetzt ist
Nummer werden höchstens so viele Verzeichnisstapeleinträge gespeichert.

speichern
Wenn gesetzt, führt die Shell `history -S' aus, bevor sie beendet wird. Wenn das erste Wort auf a . gesetzt ist
Nummer, höchstens so viele Zeilen werden gespeichert. (Die Zahl muss kleiner oder gleich sein
zu Geschichte.) Wenn das zweite Wort auf `merge' gesetzt ist, wird die History-Liste zusammengeführt
mit der bestehenden Verlaufsdatei anstatt sie zu ersetzen (falls vorhanden) und
nach Zeitstempel sortiert und die letzten Ereignisse bleiben erhalten. (+)

einplanen (+)
Das Format, in dem die einplanen eingebauter Befehl druckt geplante Ereignisse; wenn nicht
gegeben, wird `%h\t%T\t%R\n' verwendet. Die Formatabläufe sind oben unter . beschrieben
Eingabeaufforderung; Beachten Sie die variable Bedeutung von `%R'.

Schale Die Datei, in der sich die Shell befindet. Dies wird in Forking-Schalen verwendet, um zu interpretieren
Dateien, bei denen Ausführungsbits gesetzt sind, die aber vom System nicht ausführbar sind.
(Siehe die Beschreibung von builtin und nicht eingebaut Befehl Ausführung.) Initialisiert
in die (systemabhängige) Heimat der Shell.

schlvl (+)
Die Anzahl der verschachtelten Shells. In Login-Shells auf 1 zurücksetzen. Siehe auch Loginsh.

Status Der vom letzten Befehl zurückgegebene Status, es sei denn, die Variable irgendein Fehler eingestellt ist, und
Jeder Fehler in einer Pipeline oder eine Backquote-Erweiterung wird propagiert (dies ist der
Standard csh Verhalten und die aktuelle tcsh Ursprünglich). Wenn es abnormal beendet wurde,
dann wird 0200 zum Status hinzugefügt. Eingebaute Befehle, die fehlschlagen, geben den Exit-Status zurück
`1', alle anderen eingebauten Befehle geben den Status `0' zurück.

Symlinks (+)
Kann auf verschiedene Werte eingestellt werden, um symbolischen Link (`symlink') zu steuern
Auflösung:

Wenn auf `chase' gesetzt, wenn das aktuelle Verzeichnis in ein Verzeichnis wechselt
einen symbolischen Link enthält, wird er um den echten Namen des Verzeichnisses erweitert zu
auf die der Link verweist. Dies funktioniert nicht für das Home-Verzeichnis des Benutzers; das ist
ein Käfer.

Wenn auf `ignore' gesetzt, versucht die Shell, ein aktuelles Verzeichnis relativ zu . zu erstellen
das aktuelle Verzeichnis, bevor der Link gekreuzt wurde. Das bedeutet, dass cddurchgehen
ein symbolischer Link und dann `cd ..'ing bringt einen zum ursprünglichen Verzeichnis zurück. Dies
betrifft nur eingebaute Befehle und die Vervollständigung von Dateinamen.

Wenn auf `expand' gesetzt, versucht die Shell, symbolische Links zu reparieren, indem sie tatsächlich expandiert
Argumente, die wie Pfadnamen aussehen. Dies betrifft jeden Befehl, nicht nur
eingebaut. Leider funktioniert dies nicht bei schwer zu erkennenden Dateinamen, wie z
wie die in Befehlsoptionen eingebetteten. Eine Erweiterung kann durch Zitieren verhindert werden.
Obwohl diese Einstellung normalerweise die bequemste ist, ist sie manchmal irreführend und
manchmal verwirrend, wenn es ein Argument nicht erkennt, das sein sollte
erweitert. Ein Kompromiss besteht darin, `ignore' zu verwenden und den Editor-Befehl zu verwenden normalisieren-
Weg (standardmäßig an ^Xn gebunden), falls erforderlich.

Einige Beispiele sind in Ordnung. Zuerst richten wir einige Spielverzeichnisse ein:

> CD / Tmp
> mkdir von from/src nach
> ln -s von/src nach/dst

Hier ist das Verhalten mit Symlinks unscharf,

> cd /tmp/to/dst; echo $cwd
/tmp/to/dst
> CD ..; echo $cwd
/tmp/von

hier ist das verhalten mit Symlinks auf 'Jagen' setzen,

> cd /tmp/to/dst; echo $cwd
/tmp/von/src
> CD ..; echo $cwd
/tmp/von

hier ist das verhalten mit Symlinks auf "ignorieren" setzen,

> cd /tmp/to/dst; echo $cwd
/tmp/to/dst
> CD ..; echo $cwd
/tmp/zu

und hier ist das Verhalten mit Symlinks auf 'erweitern' setzen.

> cd /tmp/to/dst; echo $cwd
/tmp/to/dst
> CD ..; echo $cwd
/tmp/zu
> cd /tmp/to/dst; echo $cwd
/tmp/to/dst
> CD ".."; echo $cwd
/tmp/von
> /bin/echo ..
/tmp/zu
> /bin/echo ".."
..

Beachten Sie, dass die Erweiterung `expand' 1) genauso funktioniert wie `ignore' für Builtins wie cd, 2)
wird durch Anführungszeichen verhindert, und 3) geschieht, bevor Dateinamen an nicht eingebaute übergeben werden
Befehle.

tcsh (+)
Die Versionsnummer der Shell im Format `R.VV.PP', wobei `R' der Major ist
Release-Nummer, `VV' die aktuelle Version und `PP' das Patchlevel.

Begriff Der Terminaltyp. In der Regel einsetzen ~/.login wie unter beschrieben Startup und
Schließung.

Zeit Wenn eine Zahl eingestellt ist, wird die Zeit builtin (qv) wird nach jedem automatisch ausgeführt
Befehl, der mehr als so viele CPU-Sekunden benötigt. Wenn es ein zweites Wort gibt,
es wird als Formatstring für die Ausgabe des verwendet Zeit eingebaut. (u) Die
Folgende Sequenzen können im Formatstring verwendet werden:

%U Die Zeit, die der Prozess im Benutzermodus verbracht hat, in CPU-Sekunden.
%S Die Zeit, die der Prozess im Kernelmodus verbracht hat, in CPU-Sekunden.
%E Die verstrichene Zeit (Wanduhr) in Sekunden.
%P Der CPU-Prozentsatz, berechnet als (%U + %S) / %E.
%W Wie oft der Prozess ausgetauscht wurde.
%X Die durchschnittliche Menge des (gemeinsam genutzten) Textspeicherplatzes in KB.
%D Die durchschnittliche Menge an (nicht gemeinsam genutztem) Daten-/Stack-Speicherplatz in KB.
%K Der insgesamt belegte Speicherplatz (%X + %D) in KB.
%M Der maximale Speicher, den der Prozess zu einem beliebigen Zeitpunkt in Kbytes verwendet hat.
%F Die Anzahl der schwerwiegenden Seitenfehler (die Seite muss von der Festplatte geladen werden).
%R Die Anzahl der geringfügigen Seitenfehler.
%I Die Anzahl der Eingabevorgänge.
%O Die Anzahl der Ausgabevorgänge.
%r Die Anzahl der empfangenen Socket-Nachrichten.
%s Die Anzahl der gesendeten Socket-Nachrichten.
%k Die Anzahl der empfangenen Signale.
%w Die Anzahl der freiwilligen Kontextwechsel (Wartezeiten).
%c Die Anzahl der unfreiwilligen Kontextwechsel.

Auf Systemen ohne BSD-Ressourcenlimit werden nur die ersten vier Sequenzen unterstützt
Funktionen. Das Standardzeitformat ist `%Uu %Ss %E %P %X+%Dk %I+%Oio %Fpf+%Ww' für
Systeme, die Berichte zur Ressourcennutzung unterstützen, und `%Uu %Ss %E %P' für Systeme, die
unterlassen Sie.

Unter Sequents DYNIX/ptx sind %X, %D, %K, %r und %s nicht verfügbar, aber die
folgende zusätzliche Sequenzen sind:

%Y Die Anzahl der durchgeführten Systemaufrufe.
%Z Die Anzahl der Seiten, die bei Bedarf mit Nullen gefüllt werden.
%i Die Häufigkeit, mit der die residente Setgröße eines Prozesses vom Kernel erhöht wurde.
%d Die Häufigkeit, mit der die residente Setgröße eines Prozesses vom Kernel verringert wurde.
%l Die Anzahl der durchgeführten Lesesystemaufrufe.
%m Die Anzahl der durchgeführten Schreibsystemaufrufe.
%p Die Anzahl der Lesevorgänge von Raw-Festplattengeräten.
%q Die Anzahl der Schreibvorgänge auf Raw-Festplattengeräte.

und das Standardzeitformat ist `%Uu %Ss %E %P %I+%Oio %Fpf+%Ww'. Notiere dass der
Der CPU-Prozentsatz kann bei Multiprozessoren über 100 % liegen.

tperiode (+)
Der Zeitraum in Minuten zwischen den Ausführungen des periodisch spezielles Pseudonym.

tty (+) Der Name des TTYs oder leer, wenn er nicht an einen TTY angehängt ist.

uid (+) Die echte Benutzer-ID des Benutzers.

Benutzer Der Anmeldename des Benutzers.

ausführlich Wenn gesetzt, werden die Wörter jedes Befehls nach der Verlaufsersetzung gedruckt
(wenn überhaupt). Eingestellt von der -v Befehlszeilenoption.

Version (+)
Der Versions-ID-Stempel. Es enthält die Versionsnummer der Shell (siehe tcsh), Ursprung,
Erscheinungsdatum, Hersteller, Betriebssystem und Maschine (siehe VENDOR, OSTYP und
MACHTYP) und eine durch Kommas getrennte Liste von Optionen, die zur Kompilierzeit gesetzt wurden.
Optionen, die standardmäßig in der Distribution gesetzt sind, werden vermerkt.

8b Die Shell ist acht Bit sauber; Ursprünglich
7b Die Schale ist nicht acht Bit sauber
wide Die Shell ist Multibyte-Codierung sauber (wie UTF-8)
nls Der NLS des Systems wird verwendet; Standard für Systeme mit NLS
Wenn Login-Shells ausgeführt werden /etc/csh.login vorher statt nachher /etc/csh.cshrc
und ~/.login vorher statt nachher ~/.tcshrc und ~/.Geschichte.
dl `.' wird zuletzt eingesetzt Weg zur Sicherheit; Ursprünglich
und `.' wird weggelassen von Weg für die Sicherheit
vi vi-Style-Bearbeitung ist die Standardeinstellung und nicht Emacs
dtr Login-Shells lassen DTR beim Beenden fallen
bye bye ist ein Synonym für Abmeldung und Log ist ein alternativer Name für Watchlog
al Autologout aktiviert; Ursprünglich
kan Kanji wird gegebenenfalls gemäß den Gebietsschemaeinstellungen verwendet, es sei denn, die
nokanji Shell-Variable ist gesetzt
sm Das System malloc(3) wird verwendet
hb Das `#! ' Konvention wird beim Ausführen von Shell-Skripten emuliert
ng Die neugrp eingebaut ist verfügbar
rh Die Shell versucht, die REMOTE-HOST variable Umgebung
afs Die Shell überprüft Ihr Passwort mit dem Kerberos-Server, falls lokal
Authentifizierung schlägt fehl. Der Afsuser Shell-Variable oder die AFSUSER -Umgebung
Variable überschreibt Ihren lokalen Benutzernamen, falls gesetzt.

Ein Administrator kann zusätzliche Zeichenfolgen eingeben, um Unterschiede in den lokalen
Version.

sichtbare Glocke (+)
Wenn eingestellt, wird anstelle der hörbaren Glocke ein Bildschirmblitz verwendet. Siehe auch kein piep.

ZEIT FÜR STORYTELLING (+)
Eine Liste von Benutzer/Terminal-Paaren, auf die bei Anmeldungen und Abmeldungen geachtet werden muss. Wenn entweder der Benutzer
ist `any', alle Terminals werden für den angegebenen Benutzer überwacht und umgekehrt. Einstellung
ZEIT FÜR STORYTELLING to `(any any)' überwacht alle Benutzer und Terminals. Beispielsweise,

set watch = (george ttyd1 jede Konsole $user alle)

meldet die Aktivität des Benutzers `george' auf ttyd1, eines beliebigen Benutzers auf der Konsole und
sich selbst (oder ein Eindringling) an einem beliebigen Terminal.

Anmeldungen und Abmeldungen werden standardmäßig alle 10 Minuten überprüft, aber das erste Wort von
ZEIT FÜR STORYTELLING kann auf eine Zahl eingestellt werden, die alle paar Minuten überprüft wird. Beispielsweise,

set watch = (1 beliebiger beliebiger)

meldet jeden Login/Logout einmal pro Minute. Für Ungeduldige ist das Log builtin
Befehl löst a . aus ZEIT FÜR STORYTELLING jederzeit melden. Alle aktuellen Logins werden gemeldet (wie
an. Nach der Installation können Sie HEIC-Dateien mit der Log eingebaut) wenn ZEIT FÜR STORYTELLING ist zuerst eingestellt.

Die WER Shell-Variable steuert das Format von ZEIT FÜR STORYTELLING Berichten.

WER (+) Die Formatzeichenfolge für ZEIT FÜR STORYTELLING Mitteilungen. Die folgenden Sequenzen werden ersetzt durch die
gegebene Informationen:

%n Der Name des Benutzers, der sich an-/abgemeldet hat.
%a Die beobachtete Aktion, dh `angemeldet', `abgemeldet' oder `ersetzt alter Benutzer an'.
%l Das Terminal (tty), an dem sich der Benutzer an-/abgemeldet hat.
%M Der vollständige Hostname des entfernten Hosts oder `lokal', wenn die Anmeldung/Abmeldung von . erfolgte
der lokale Gastgeber.
%m Der Hostname des entfernten Hosts bis zum ersten `.'. Der vollständige Name wird gedruckt
ob es sich um eine IP-Adresse oder eine X Window System-Anzeige handelt.

%M und %m sind nur auf Systemen verfügbar, die den Remote-Hostnamen in speichern
/etc/utmp. Wenn nicht gesetzt, `%n hat %a %l von %m.' verwendet wird, oder `%n hat %a %l.' an
Systeme, die den entfernten Hostnamen nicht speichern.

Wortzeichen (+)
Eine Liste nicht-alphanumerischer Zeichen, die von der . als Teil eines Wortes betrachtet werden
Vorwärtswort, Rückwärts-Wort usw., Editorbefehle. Wenn nicht gesetzt, wird `*?_-.[]~=' verwendet.


AFSUSER (+)
Entspricht dem Afsuser Shell-Variable.

COLUMNS Die Anzahl der Spalten im Terminal. Sehen Terminal Management.

DISPLAY Wird vom X Window System verwendet (siehe X(1)). Wenn gesetzt, wird die Shell nicht gesetzt Autologout
(siehe).

EDITOR Der Pfadname zu einem Standardeditor. Siehe auch die VISUAL Umgebungsvariable und
die run-fg-editor Editor-Befehl.

(+)
Entspricht dem Gruppe Shell-Variable.

HOME Entspricht dem Startseite Shell-Variable.

HOST (+)
Initialisiert mit dem Namen des Computers, auf dem die Shell ausgeführt wird, als
bestimmt durch die gethostname(2) Systemaufruf.

HOSTTYP (+)
Initialisiert auf den Maschinentyp, auf dem die Shell ausgeführt wird, wie bestimmt bei
Kompilierzeit. Diese Variable ist veraltet und wird in einer zukünftigen Version entfernt.

HPATH (+)
Eine durch Doppelpunkte getrennte Liste von Verzeichnissen, in denen die Laufhilfe Editor-Befehl sieht aus
zur Befehlsdokumentation.

SPRACHE Gibt die bevorzugte Zeichenumgebung an. Sehen Ureinwohner SPRACHE: Englisch System Unterstützung.

LC_CTYPE
Wenn gesetzt, wird nur die Behandlung von ctype-Zeichen geändert. Sehen Ureinwohner SPRACHE: Englisch System
Unterstützung.

LINES Die Anzahl der Leitungen im Terminal. Sehen Terminal Management.

LS_FARBEN
Das Format dieser Variablen erinnert an die termcap(5) Datei Format; ein Doppelpunkt-
getrennte Liste von Ausdrücken der Form "xx=String", wo "xx"ist ein Zwei-
Name der Zeichenvariablen. Die Variablen mit ihren zugehörigen Standardwerten sind:

nein 0 Normaler Text (kein Dateiname)
fi 0 Reguläre Datei
di 01;34 Verzeichnis
ln 01;36 Symbolischer Link
pi 33 Named Pipe (FIFO)
also 01;35 Buchse
do 01;35 Tür
bd 01;33 Gerät sperren
cd 01;32 Zeichen Gerät
ex 01;32 Ausführbare Datei
mi (keine) Datei fehlt (standardmäßig fi)
oder (keine) Verwaister symbolischer Link (standardmäßig ln)
lc ^[[ Linker Code
rc m Richtiger Code
ec (kein) Endcode (ersetzt lc+no+rc)

Sie müssen nur die Variablen einschließen, die Sie vom Standardwert ändern möchten.

Dateinamen können auch basierend auf der Dateinamenerweiterung eingefärbt werden. Dies ist angegeben
in England, LS_FARBEN Variable mit der Syntax "*ext=Zeichenfolge". Zum Beispiel mit ISO
6429-Codes, um alle Quelldateien der Sprache C blau einzufärben, würden Sie angeben "*.c=34".
Dies würde alle Dateien mit der Endung einfärben .c in blauer (34) Farbe.

Steuerzeichen können entweder in Escape-Notation im C-Stil oder in geschrieben werden
stty-ähnliche ^-Notation. Die Notation im C-Stil fügt hinzu ^[ für Flucht, _ für einen normalen
Leerzeichen und ? für Löschen. zusätzlich ^[ Fluchtzeichen sein kann
Wird verwendet, um die Standardinterpretation von zu überschreiben ^[, ^, : und =.

Jede Datei wird geschrieben als . Wenn der
Code ist undefiniert, die Sequenz wird stattdessen verwendet. Das ist
im Allgemeinen bequemer zu verwenden, aber weniger allgemein. Die Links-, Rechts- und Endcodes
werden bereitgestellt, damit Sie gemeinsame Teile nicht immer und immer wieder eingeben müssen
seltsame Terminals unterstützen; Sie müssen sie im Allgemeinen überhaupt nicht ändern, es sei denn
Ihr Terminal verwendet keine ISO 6429-Farbsequenzen, sondern ein anderes System.

Wenn Ihr Terminal ISO 6429-Farbcodes verwendet, können Sie die Typencodes zusammenstellen
(dh alle außer der lc, rc und ec Codes) von numerischen Befehlen getrennt durch
Semikolons. Die häufigsten Befehle sind:

0, um die Standardfarbe wiederherzustellen
1 für hellere Farben
4 für unterstrichenen Text
5 für blinkenden Text
30 für schwarzen Vordergrund
31 für roten Vordergrund
32 für grünen Vordergrund
33 für gelben (oder braunen) Vordergrund
34 für blauen Vordergrund
35 für violetten Vordergrund
36 für Cyan-Vordergrund
37 für weißen (oder grauen) Vordergrund
40 für schwarzen Hintergrund
41 für roten Hintergrund
42 für grünen Hintergrund
43 für gelben (oder braunen) Hintergrund
44 für blauen Hintergrund
45 für violetten Hintergrund
46 für Cyan-Hintergrund
47 für weißen (oder grauen) Hintergrund

Nicht alle Befehle funktionieren auf allen Systemen oder Anzeigegeräten.

Einige Terminalprogramme erkennen den standardmäßigen Endcode nicht richtig. Ich falle
Text wird eingefärbt, nachdem Sie eine Verzeichnisliste erstellt haben, versuchen Sie, die zu ändern nicht und fi
Codes von 0 bis zu den numerischen Codes für Ihre Standard-Vorder- und Hintergrundfarben.

MACHTYP (+)
Der Maschinentyp (Mikroprozessorklasse oder Maschinenmodell), wie beim Kompilieren bestimmt
Zeit.

NOREBIND (+)
Wenn gesetzt, werden druckbare Zeichen nicht zurückgebunden Selbsteinfügebefehl. Sehen Ureinwohner
SPRACHE: Englisch System Unterstützung.

OSTYP (+)
Das Betriebssystem, wie es zur Kompilierzeit bestimmt wurde.

PATH Eine durch Doppelpunkte getrennte Liste von Verzeichnissen, in denen nach ausführbaren Dateien gesucht werden soll.
Entspricht dem Weg Shell-Variable, aber in einem anderen Format.

PWD (+) Entspricht dem cwd Shell-Variable, aber nicht damit synchronisiert; nur aktualisiert
nach einem tatsächlichen Verzeichniswechsel.

REMOTE-HOST (+)
Der Host, von dem sich der Benutzer remote angemeldet hat, falls dies der Fall ist und der
Shell ist in der Lage, es zu bestimmen. Nur gesetzt, wenn die Shell so kompiliert wurde; siehe die
Version Shell-Variable.

SHLVL (+)
Entspricht dem schlvl Shell-Variable.

SYSTYP (+)
Der aktuelle Systemtyp. (nur Domäne/Betriebssystem)

TERM Entspricht dem Begriff Shell-Variable.

TERMCAP Die Terminalfähigkeitszeichenfolge. Sehen Terminal Management.

USER Entspricht dem Benutzer Shell-Variable.

VENDOR (+)
Der Anbieter, wie zum Zeitpunkt der Kompilierung festgelegt.

VISUAL Der Pfadname zu einem standardmäßigen Vollbild-Editor. Siehe auch die EDITOR -Umgebung
Variable und die run-fg-editor Editor-Befehl.

Verwenden Sie tcsh online mit den Diensten von onworks.net


Kostenlose Server & Workstations

Laden Sie Windows- und Linux-Apps herunter

Linux-Befehle

Ad




×
Werbung
❤ ️Hier einkaufen, buchen oder kaufen – kostenlos, damit die Dienste kostenlos bleiben.