Ziele
Am Ende dieser Säsion können Sie in der Lage sein:
Heimverzeichnis - Zuhause
Linux verwendet eine Reihe von Umgebungsvariablen der oberen Fall, eher wie Pidgin -Löcher, die automatisch besiedelt sind, um Informationen zu speichern. Die vollständige Liste kann wie folgt angezeigt werden:
$ set | mehr
Ich habe hier eher mehr als weniger in die Leinwand aufgenommen.
Der Name des Heimverzeichnisses eines Benutzers, normalerweise/zu Hause/Benutzername (/Home/KDM in meinem CAE), wird in der Umwelt variablen Zuhause gespeichert. Beachten Sie, dass die meisten Umgebungsvariablen im oberen Fall sind.
Wir verwenden ein $, wenn wir auf eine Umgebungsvariable verweisen, um festzustellen, dass es a ist
Variabler Name und keine Zeichenfolge. Um das Variable -Haus anzuzeigen, geben Sie ein:
$ echo $ home
Linux ist voller Abkürzungen und die Charakter -Tilde, ~, ist eine Abkürzung zu Hause. Es kann stattdessen verwendet werden:
$ echo ~
Arbeitsverzeichnis - PWD
Der Befehl PWD kann verwendet werden, um herauszufinden, welches aktuelle Arbeitsverzeichnis ist. Wenn sich ein Benutzer anmeldet, ist dies sein Heimverzeichnis, wie in der definiert /etc/passwd Datei. Hier zeigen wir nur die letzten beiden Zeilen der Datei und den aktuellen Pfad für den Benutzer KDM an:
$ schwanz -2 /etc /passwd
$ pwd
Verzeichnisse ändern - CD
Die Befehls -CD kann verwendet werden, um das aktuelle Arbeitsverzeichnis zu ändern.
Zum Beispiel, um zum Stammverzeichnis zu wechseln:
$ CD /; PWD
# Die ; Das Zeichen ermöglicht zwei Befehle in einer Zeile
Um zum Verzeichnis /etc zu ziehen:
$ cd /etc; pwd
Um zum vorherigen Verzeichnis zurückzukehren, verwenden Sie den Befehl:
$ cd -
Um zum Heimverzeichnis zurückzukehren, verwenden Sie die Befehls -CD ohne Optionen:
$ cd; pwd
Eingabeaufforderung - PS1
Bei Verwendung des CD -Befehls zum Ändern von Verzeichnissen ist es nicht immer offensichtlich, wie das aktuelle Verzeichnis ist. Die Bash -Shell ermöglicht die Anpassung der Eingabeaufforderung.
Die Standardeingabeaufforderung wird in einer Systemvariablen, PS1, gespeichert. Dies ist in eingetragen Oberer, höher Fall. Um die Variable einzugeben:
$ echo $ PS1
Notiere dass der "$" angezeigt ist nicht die Eingabeaufforderung, sondern die Inhalt der Variablen!
Die folgenden Sonderzeichen können verwendet werden, um die Eingabeaufforderung zu ändern:
Zum Beispiel, um die Eingabeaufforderung auf die aktuelle Shell und Version zu setzen: Verwendung:
$ PS1 = '\ S- \ V:'
Die Eingabeaufforderung erscheint jetzt als Bash-5.0: .
Aktuelles Verzeichnis - $ PWD
Um die ständige Verwendung des PWD -Befehls zu speichern, kann die Eingabeaufforderung auf den vollständigen Pfadnamen des aktuellen Verzeichnisses festgelegt werden, einem Konzept, das den DOS -Benutzern bekannt ist. Geben Sie dazu vorsichtig Folgendes ein Oberer, höher Fall:
Bash-5,0: PS1 = '$ PWD:'
Die Eingabeaufforderung ändert sich in diesem Beispiel um das aktuelle Arbeitsverzeichnis
/home/kdm: .
Ändern Sie nun die Verzeichnisse und beachten Sie, wie sich die Eingabeaufforderung ändert.
/home /kdm: cd /
/: CD /etc
/etc: CD
Wir können nun sehen, in welchem Verzeichnis wir uns befinden.
Farbe hinzufügen
Eine Farbe kann in diesem Beispiel gelb wie folgt hinzugefügt werden:
/home/kdm: ps1 = '\ [\ e [01; 33m \] $ pwd: \ [\ 033 [01; 34m \] \ [\ 033 [00m \]'
Normalerweise habe ich meine Eingabeaufforderung auf das aktuelle Verzeichnis eingestellt und reserviere die Farbe rot (Alter 33 bis 31 im obigen Befehl), wenn ich root verwende. Für die folgenden Beispiele werde ich jedoch zum '$' -Zeichen zurückkehren.
Sekundäre Eingabeaufforderung ->
Die sekundäre Eingabeaufforderung wird auch in einer Systemvariablen, PS2, ebenfalls im oberen Fall gespeichert. Um diese Variable anzuzeigen, geben Sie ein:
$ echo $ ps2
Diese Eingabeaufforderung wird angezeigt, wenn beispielsweise ein unvollständiger Befehl eingegeben wird:
$ echo “Hallo da
In diesem Beispiel fehlt das zweite Zitatsymbol. Um diese Situation zu korrigieren, den Befehl zu vervollständigen oder Control & C einzugeben und den Befehl erneut einzugeben.
Dateien oder Verzeichnisse?
Wenn der Inhalt eines Verzeichnisses angezeigt wird, ist es nicht immer offensichtlich, wenn die Einträge Dateien oder Verzeichnisse sind.
Mit der Option -f, die häufig auf Unix -Servern verwendet wird, folgen die angezeigten Einträge von einem zusätzlichen Charakter. Versuchen Sie zum Beispiel:
$ ls -f
Diese zusätzlichen Zeichen enthalten Folgendes und bezeichnen:
Linux -Systeme unterstützen die Farbcodierung von Verzeichnissen und Dateien. Farben können standardmäßig eingeschaltet sein. Wenn nicht, versuchen Sie Folgendes (verwenden Sie einen doppelten Bindestrich):
$ ls --farbe
Diese zusätzlichen Farben umfassen die folgenden und bezeichnen:
Aliase erstellen
Auf einigen System nützlichen Befehlen wie LA, die den Befehl LS -A und LL ausführen, der die Befehl Ls -l ausführt, sind verfügbar. Wenn diese Befehle jedoch nicht verfügbar sind, kann ein Alias erstellt werden, um das gleiche Ergebnis zu erzielen. Einige Aliase können automatisch definiert werden, wenn eine Shell gestartet wird.
Für jeden häufig verwendeten Befehl kann ein Alias erstellt werden. Dies speichert, um den vollständigen Befehl und seine Optionen einzugeben. Zum Beispiel, wenn Farben nicht mit LS verwendet werden:
$ alias ls = 'ls - -color'
$ ls
Diese beiden Beispiele zeigen Dateien in den Verzeichnissen /etc und /bin angezeigt. Die Option -D zeigt nur Verzeichniseinträge, nicht die Dateien im Verzeichnis:
$ ls -d /bin /y*
$ ls -d /etc /u**
Gemeinsame Aliase
Comman -Aliase enthalten Folgendes in die Befehle entfernen, kopieren und verschieben. Diese Aliase machen den Befehl interaktiv, sodass Sie eine Aktion ergreifen können oder nicht:
$ alias rm = 'rm -i' '
$ alias cp = 'cp -i' '
$ alias mv = 'mv -i' '
In dem hier gezeigten Beispiel werden vier leere Dateien erstellt. Die erste Datei1 wird dann entfernt. Anschließend wird ein Alias für RM erstellt und Datei2 wird interaktiv entfernt:
Der tatsächliche Befehlsname muss nicht unbedingt für den Alias -Namen verwendet werden. Beachten Sie, dass diese Beispiele den Alias zu LS verwenden, das oben erstellt wurde:
$ alias la = 'ls -a' '
$ alias ll = 'ls -l'
$ la
$ ll
Aliase verwenden
Verwenden Sie den Alias -Befehl, um eine Liste von Aliase anzuzeigen. Es ist sehr wahrscheinlich, dass Sie standardmäßig bereits mehrere Aliase haben:
$ alias
Ein Befehl kann ohne Verwendung des Alias aufgerufen werden, indem der Befehl mit einem Backslash \ vorangestellt wird, \ . Dies ist besonders nützlich, wenn ein Alias zu RM -i existiert und Sie viele Dateien entfernen möchten!
$ ls
$ \ ls
Um einen oder mehrere Befehls -Aliase zu entfernen: Verwendung:
$ unalias ll la
$ alias
Sparen von Anpassungen
Ein Nachteil beim Ändern der Eingabeaufforderung oder beim Hinzufügen von Aliase ist, dass diese Einstellungen verloren gehen, wenn der Benutzer die Sitzung beendet. Dieses Problem kann überwunden werden, indem die Einstellungen in einer Einrichtungsdatei gespeichert werden. Die Bash -Shell speichert Variablen und Aliase dauerhaft in einer von mehreren versteckten Dateien, Dateien, die mit einem vollständigen Stopp beginnen.
Hier werde ich den einfachen Editor -Nano verwenden (VIM kann stattdessen verwendet werden), um die versteckte Datei zu aktualisieren .bashrc um die Umgebung zu konfigurieren.
Ich habe meine Änderungen zum Ende der Datei hinzugefügt, die Eingabeaufforderung geändert und einige meiner Lieblings -Aliase hinzugefügt:
$ nano .bashrc
Um die Änderungen zu speichern und zu beenden, geben Sie die Steuerung & x ein.
Der DOT -Befehl - .
Das neue .Die BASHRC. Alternative kann die Datei so getestet werden:
$… Bashrc
Der Punkt (.) Der Befehl führt den Inhalt der Datei in der aktuellen Shell aus.
Befehlsgeschichte
Die Funktion des Befehlsverlaufs verwaltet eine Liste kürzlich verwendeter Befehle in der Datei .Bash_history und liefert eine Abkürzung für die Wiedereinführung eines dieser Befehle.
Um die letzten 10 Befehle anzuzeigen, geben Sie ein:
$ History 10
Um den letzten Befehlsanwendung erneut auszunehmen !!. Zum Beispiel:
$ Kopf -3 /etc /Shadow
$ sudo !!
Befehlszeile bearbeiten
Steuerschlüsse, die zum Bearbeiten früherer Befehlszeileneinträge verwendet wurden, enthalten Folgendes:
In diesem Beispiel verwende ich Control & R (zweimal), um eine umgekehrte Suche nach dem Kopfbefehl durchzuführen. Wenn Sie die Eingabetaste drücken, wird dann der Befehl ausgeführt:
Befehlsabschluss
In der Bash -Shell kann die Registerkarte Schlüsselsequenz verwendet werden, um einen Dateinamen zu vervollständigen, der in einem Befehl verwendet wird.
Um dies zu versuchen, wechseln Sie zunächst in das Verzeichnis /die Bin:
$ CD /Bin
Geben Sie den folgenden Befehl aber ein nicht Drücken Sie noch: ENTER:
$ ls -l y
Jetzt drücken Sie die Tab Tasten zweimal. Eine Liste aller Dateien, die mit dem Zeichen beginnen.
Fügen Sie dem Befehl Zeichen hinzu, um einen eindeutigen Namen aufzurufen, drücken Sie aber noch nicht die Eingabetaste.
$ ls -l yp
Jetzt drücken Sie die Tab Taste. Der Befehl wählt automatisch die richtige Datei aus.