Heftiger Schlag (Schale von Unix)

Heftiger Schlag ist eine Schale von Unix, die von Brian Fox für das GNU-Projekt als ein Ersatz der kostenlosen Software für die Bach-Schale (sch) geschrieben ist. Veröffentlicht 1989 ist es weit als die Schale für das GNU Betriebssystem und als die Verzug-Schale auf Linux und Darwin verteilt worden. Es ist zu Windows von Microsoft getragen und mit Cygwin und MinGW zu DOS durch das DJGPP-Projekt zu Novell NetWare und zum Androiden über verschiedene Terminalemulationsanwendungen verteilt worden.

Heftiger Schlag ist ein Befehl-Verarbeiter, der normalerweise in einem Textfenster geführt ist, dem Benutzer erlaubend, Befehle zu tippen, die Handlungen verursachen. Heftiger Schlag kann auch Befehle von einer Datei, genannt eine Schrift lesen. Wie alle Schalen von Unix unterstützt es Dateinamen wildcarding, Rohrleitung, hier Dokumente, Befehl-Ersatz, Variablen und Kontrollstrukturen für die Bedingungsprüfung und Wiederholung. Die Schlüsselwörter, Syntax und anderen grundlegenden Eigenschaften der Sprache wurden alle von sch kopiert. Andere Eigenschaften, z.B, Geschichte, wurden von csh und ksh kopiert. Heftiger Schlag ist eine POSIX-Schale, aber mit mehreren Erweiterungen.

Der Name selbst ist ein Akronym, ein Wortspiel und beschreibend. Als ein Akronym tritt es für Schale des Bachs wieder ein, sein Ziel als ein freier Ersatz für die Bach-Schale kennzeichnend.

Als ein Wortspiel hat es dieses Ziel in einem Ausdruck ausgedrückt, der dasselbe, wie geboren, wieder, einen Begriff für die geistige Wiedergeburt erklingen lässt. Der Name ist auch davon beschreibend, was er getan hat, zusammen die Eigenschaften sch, csh und ksh heftig schlagend.

Geschichte

Brian Fox hat begonnen, Heftigen Schlag am 10. Januar 1988 zu codieren, nachdem Richard Stallman unzufrieden mit dem Mangel am Fortschritt geworden ist, der durch einen vorherigen Entwickler wird macht. Stallman und die Organisation zur Förderung freier Software (FSF) haben eine freie Schale gedacht, die vorhanden sch Schriften laufen konnte, die deshalb zu einem völlig freien System strategisch sind, das von BSD und GNU-Code gebaut ist, dass das eines der wenigen Projekte war, haben sie sich mit Fox finanziell unterstützt, der die Arbeit als ein Angestellter von FSF übernimmt. Fox hat Heftigen Schlag als ein Beta, Version.99 am 7. Juni 1989 veröffentlicht und ist der primäre maintainer bis einmal zwischen Mitte 1992 und Mitte 1994 geblieben, als er von FSF entlassen wurde und seine Verantwortung einem anderen frühen Mitwirkenden, Chet Ramey gewechselt wurde.

Eigenschaften

Die Befehl-Syntax des Heftigen Schlags ist eine Obermenge der Bach-Schale-Befehl-Syntax. Die große Mehrheit von Bach-Schale-Schriften kann durch den modifikationsfreien Heftigen Schlag mit Ausnahme von Bach-Schale-Schriften hingerichtet werden, die ins Franse-Syntax-Verhalten interpretiert verschieden im Heftigen Schlag stolpern oder versuchen, einen Systembefehl zu führen, der einen neueren eingebauten Heftigen Schlag vergleicht, usw. schließt Befehl-Syntax des Heftigen Schlags Ideen ein, die von der Schale von Korn (ksh) und der C-Schale (csh) wie das Befehl-Linienredigieren, die Befehl-Geschichte, der Verzeichnisstapel, und Variablen und POSIX-Befehl-Ersatz-Syntax gezogen sind. Wenn verwendet, als eine interaktive Befehl-Schale und das Drücken des Etikett-Schlüssels verwendet Heftiger Schlag automatisch Befehl-Linienvollziehung, um teilweise getippte Programmnamen, Dateinamen und Variablennamen zu vergleichen. Das Vollziehungssystem der Befehl-Linie des Heftigen Schlags ist sehr flexibel und anpassbar, und wird häufig mit Funktionen paketiert, die Argumente und Dateinamen für spezifische Programme und Aufgaben vollenden.

Die Syntax des heftigen Schlags hat viele Erweiterungen, an denen die Bach-Schale Mangel hat. Heftiger Schlag kann Berechnungen der ganzen Zahl durchführen, ohne Außenprozesse verschieden von der Bach-Schale zu erzeugen. Heftiger Schlag verwendet den Befehl und die variable Syntax für diesen Zweck. Syntax des heftigen Schlags vereinfacht Eingabe/Ausgabe-Wiederrichtung auf Weisen, die in der traditionellen Bach-Schale nicht möglich sind. Zum Beispiel kann Heftiger Schlag Standardproduktion (stdout) und Standardfehler (stderr) zur gleichen Zeit mit dem Maschinenbediener umadressieren. Das ist einfacher zu tippen, als der Bach gleichwertig '' schält. Heftiger Schlag unterstützt Prozess-Ersatz mit

Wenn

sie das 'Funktions'-Schlüsselwort verwenden, sind Funktionsbehauptungen des Heftigen Schlags mit Bourne/Korn/POSIX Schriften nicht vereinbar (die Schale von Korn hat dasselbe Problem, wenn sie 'Funktion' verwendet), aber Heftiger Schlag akzeptiert dieselbe Funktionsbehauptungssyntax als die Schalen von Bach und Korn, und ist POSIX conformant. Wegen dieser und anderen Unterschiede sind Schale-Schriften des Heftigen Schlags selten runnable unter dem Bach, oder Korn schälen Dolmetscher, wenn absichtlich nicht geschrieben, mit dieser Vereinbarkeit im Sinn, die weniger üblich wird, weil Linux weit verbreiteter wird. Aber in der POSIX Weise ist die Übereinstimmung des Heftigen Schlags mit POSIX fast vollkommen.

Unterstützungen des heftigen Schlags hier Dokumente ebenso die Bach-Schale haben immer. Außerdem, da Heftiger Schlag der Version 2.05b Standardeingang (stdin) von "hier Schnur" das Verwenden umadressieren kann

Schlagen Sie 3.0 Unterstützungen im Prozess regelmäßiger Ausdruck heftig, der das Verwenden einer an Perl erinnernden Syntax vergleicht.

Schlagen Sie 4 eingeführte Unterstützung für die assoziative Reihe heftig. Assoziative Reihe erlaubt eine unechte Unterstützung für die mehrdimensionale (mit einem Inhaltsverzeichnis versehene) Reihe auf eine ähnliche Weise zu AWK:

erklären Sie, dass-A # eine assoziative Reihe 'ein' Fälschen eines bi-dimensional mit einem Inhaltsverzeichnis versehene Reihe erklären

i=1; j=2 # initialisieren einige Indizes

[$i, $j] =5 # Partner schätzen "5" zum Schlüssel "$i, $j" (d. h. "1,2")

Echo-$ {[$i, $j]} # drucken den versorgten Wert am Schlüssel "$i, $j"

</Quelle>

Vergrößerung der geschweiften Klammer

Vergrößerung der geschweiften Klammer, auch genannt Wechsel, ist eine Eigenschaft, die von der C-Schale kopiert ist, die eine Reihe alternativer Kombinationen erzeugt. Die erzeugten Ergebnisse brauchen als Dateien nicht zu bestehen. Die Ergebnisse jeder ausgebreiteten Schnur werden nicht sortiert und zur richtigen Ordnung verlassen wird bewahrt:

hallen Sie {p, c, d, b} e # Menschenaffe-Ass ade abe

Echo {a, b, c} {d, e, f} # Anzeige ae Niederfrequenz bd, bf cd ce vgl sein

</Quelle>

Vergrößerungen der geschweiften Klammer sollten in tragbaren Schale-Schriften nicht verwendet werden, weil die Bach-Schale dieselbe Produktion nicht erzeugen wird.

  1. !/bin/sh
  2. Eine traditionelle Schale erzeugt dieselbe Produktion nicht

hallen Sie {p, c, d, b} e # {p, c, d, b} e

</Quelle>

Wenn Vergrößerung der geschweiften Klammer mit Wildcards verbunden wird, werden die geschweiften Klammern zuerst ausgebreitet, und dann werden die resultierenden Wildcards normalerweise eingesetzt. Folglich konnte eine Auflistung von JPEG und PNG Images im aktuellen Verzeichnis erhalten werden mit:

ls *. {jpg, jpeg, png} # breitet sich zu *.jpg *.jpeg *.png - nach der, aus

# werden die Wildcards bearbeitet

</Quelle>

Anlauf-Schriften

Wenn Heftiger Schlag anfängt, führt er die Befehle in einer Vielfalt von verschiedenen Schriften durch.

Wenn angefangen, als eine interaktive Anmeldungsschale:

  • Heftiger Schlag liest und führt durch (wenn er besteht).
  • Nach dem Lesen dieser Datei sucht es, und in dieser Ordnung, und liest und führt die erste durch (der besteht und lesbar ist).

Wenn eine Anmeldungsschale abgeht:

  • Heftiger Schlag liest und führt durch (wenn er besteht).

Wenn angefangen, als eine interaktive Schale (aber nicht eine Anmeldungsschale):

  • Heftiger Schlag liest und führt durch (wenn er besteht). Das kann durch das Verwenden der Auswahl gehemmt werden. Die Auswahl wird Heftigen Schlag zwingen, Befehle von statt zu lesen und durchzuführen.

Beweglichkeit

Das Hervorrufen des Heftigen Schlags mit der Auswahl oder das Angeben in einer Schrift veranlassen Heftigen Schlag, sehr nah dem POSIX 1003.2 Standard anzupassen.

Für die Beweglichkeit beabsichtigte Schale-Schriften des heftigen Schlags sollten mindestens die Bach-Schale in Betracht ziehen, die sie vorhat zu ersetzen.

Heftiger Schlag hat bestimmte Eigenschaften, an denen die traditionelle Bach-Schale Mangel hat. Unter diesen sind:

  • Bestimmte verlängerte Beschwörungsoptionen
  • Der Befehl-Ersatz mit dem $ Notation (ist diese Eigenschaft ein Teil des POSIX 1003.2 Standard obwohl)
  • Vergrößerung der geschweiften Klammer
  • Bestimmte Reihe-Operationen und assoziative Reihe
  • Die doppelten Klammern haben Testkonstruktion erweitert
  • Die arithmetische Einschätzung der doppelten Parenthesen baut
  • Bestimmte Schnur-Manipulationsoperationen
  • Prozess-Ersatz
  • Ein Regelmäßiger Ausdruck, der Maschinenbediener vergleicht
  • Mit dem heftigem Schlag spezifischer builtins
  • Coprocesses

Tastatur-Abkürzungen

Die folgenden Abkürzungen arbeiten, wenn sie Verzug (Emacs) Schlüssel bindings verwenden. Vi-Bindings kann ermöglicht werden, indem er läuft.

Zeichen: Für das Abkürzungsbeteiligen können Sie im Stande sein, stattdessen zu verwenden.

Zeichen: Manchmal müssen Sie statt verwenden, weil die Abkürzung eine andere Abkürzung kollidiert. Zum Beispiel, in Trisquel 5.0 (ein Vertrieb von Linux), wird sich das Drücken nicht bewegen der Cursor schicken ein Wort nach, aber wird "Datei" im Menü des Endfensters aktivieren.

  • : Autovollendet von der Cursor-Position.
  • : Bewegt den Cursor zum Linienanfang (gleichwertig zum Schlüssel).
  • : Bewegt sich der Cursor unterstützen einen Charakter (gleichwertig zum Schlüssel).
  • : Sendet dem Signal SIGINT an die aktuelle Aufgabe, die abbricht und es schließt.
  • Sendet einen EOF Anschreiber, der (wenn nicht arbeitsunfähig, durch eine Auswahl) die aktuelle Schale (gleichwertig zum Befehl) schließt. (Nur wenn es keinen Text auf der aktuellen Linie gibt)
  • Wenn es Text auf der aktuellen Linie gibt, löscht den aktuellen Charakter (dann gleichwertig zum Schlüssel).
  • : bewegt den Cursor zum Linienende (gleichwertig zum Schlüssel).
  • : Bewegt sich der Cursor schicken einen Charakter (gleichwertig zum Schlüssel) nach.
  • : Brechen Sie die Forschung ab und stellen Sie die ursprüngliche Linie wieder her.
  • : Löscht den vorherigen Charakter (dasselbe als Rücktaste).
  • : Gleichwertig zum Etikett-Schlüssel.
  • : Gleichwertig zum eingehen Schlüssel.
  • : Klärt den Linieninhalt nach dem Cursor und kopiert es in die Zwischenablage.
  • : Klärt den Schirm-Inhalt (gleichwertig zum Befehl).
  • : ruft den folgenden Befehl (gleichwertig zum Schlüssel) zurück.
  • : Führt den gefundenen Befehl von der Geschichte durch, und holen Sie die folgende Linie hinsichtlich der aktuellen Linie von der Geschichte für das Redigieren herbei.
  • : ruft den vorherigen Befehl (gleichwertig zum Schlüssel) zurück.
  • : ruft den letzten Befehl einschließlich des angegebenen Charakters (E) zurück. Eine Sekunde ruft den folgenden vorderen Befehl zurück, der der Forschung entspricht
  • : Gehen Sie zum folgenden neueren Befehl der Forschung zurück (hüten Sie sich, um es von einem Terminal nicht durchzuführen, weil dieser Befehl auch seinen XOFF startet). Wenn Sie das XOFF-Einstellung geändert haben, verwenden Sie an der Rückkehr.
  • : Stellen Sie die vorherigen zwei Charaktere um.
  • : Klärt den Linieninhalt vor dem Cursor und kopiert es in die Zwischenablage.
  • : Klärt das Wort vor dem Cursor und kopiert es in die Zwischenablage.
  • : trägt der Zwischenablage-Inhalt von der Cursor-Position bei.
  • : Editiert die aktuelle Linie im $EDITOR-Programm oder vi, wenn unbestimmt.
  • : Lesen Sie im Inhalt der inputrc Datei, und vereinigen Sie jeden bindings oder variable Anweisungen gefunden dort.
  • : Zusätzlich, machen getrennt nicht vergessen für jede Linie auf.
  • : Anzeigeversionsinformation über das aktuelle Beispiel des heftigen Schlags.
  • : Lässt den Cursor mit seiner alten Position abwechseln. (C-x, weil x eine sich treffende Gestalt hat).
  • : Sendet dem Signal SIGTSTP an die aktuelle Aufgabe, die es aufhebt. Um es im Hintergrund durchzuführen, kann man hereingehen. Es vom Hintergrund oder der Suspendierung (Vordergrund) zurückzubringen, kann ausgegeben werden.
  • : Zusätzlich, machen getrennt nicht vergessen für jede Linie auf.
  • : bewegt den Cursor rückwärts ein Wort.
  • : Kapitalisiert den Charakter unter dem Cursor und bewegt sich zum Ende des Wortes.
  • : Schneidet das Wort nach dem Cursor.
  • : bewegt sich der Cursor schicken ein Wort nach.
  • : Senkt den Fall jedes Charakters von der Position des Cursors bis das Ende des aktuellen Wortes.
  • : Annulliert die Änderungen und stellt die Linie zurück, wie es in der Geschichte war.
  • : Kapitalisiert jeden Charakter von der Position des Cursors bis das Ende des aktuellen Wortes.
  • : Fügen Sie das letzte Argument für den vorherigen Befehl (das letzte Wort des vorherigen Geschichtszugangs) ein.

Siehe auch

  • Der Vergleich des Befehls schält

Links


Leibeigenschaft / Schneesturm
Impressum & Datenschutz