GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Verwendung von Shell-Erweiterungen zum Generieren von Shell-Tokens unter Linux

Shell-Erweiterungen

Während der Arbeit in einer Shell werden oft Sätze oder Bereiche von Informationen wiederholt. Die Shell-Erweiterung hilft beim Generieren einer großen Anzahl von Shell-Tokens mit kompakten Syntaxen. Die Erweiterung wird in der Befehlszeile ausgeführt, nachdem der Befehl in Tokens aufgeteilt wurde. Von den vielen verfügbaren Erweiterungen werden der Pfadname, der Dateiname und die geschweiften Erweiterungen im Voraus erklärt.

Pfadnamenerweiterung

Die Erweiterung des Pfadnamens vereinfacht Standortänderungen innerhalb der Verzeichnishierarchie. Die Erweiterung des Pfadnamens umfasst:
– Die Tilde (~) -Zeichen, das den absoluten Pfadnamen des Home-Verzeichnisses des aktuellen Benutzers darstellt
– Das Tilde-Zeichen (~) mit einem Benutzernamen, das das Home-Verzeichnis des angegebenen Benutzers darstellt
– Der Bindestrich ( -) Zeichen, das das vorherige Arbeitsverzeichnis darstellt

Hinweis :Das Tilde-Zeichen (~) ist in allen Shells außer der Bourne-Shell verfügbar.

Betrachten Sie die folgenden Beispiele für jedes Erweiterungszeichen:
1. Wechseln Sie mit dem Tilde-Zeichen (~) in das Verzeichnis dir1.

$ cd ~/dir1
$ pwd 
/home/user/dir1/

2. Wechseln Sie mit dem Tilde-Zeichen (~) gefolgt von einem Benutzernamen in das Home-Verzeichnis des Benutzers.

$ cd ~user
$ pwd 
/home/user

3. Wechseln Sie mit dem Erweiterungszeichen – zwischen den Verzeichnissen user und tmp.

$ cd
$ pwd
/home/user
$ cd /tmp
$ pwd
/tmp
$ cd -
/export/home/user1
$ cd -
/tmp

Dateinamenerweiterung

Die Dateinamenerweiterungen sind:

  • Das Sternchen (*)
  • Das Fragezeichen (?)
  • Die eckigen Klammern ([]) Zeichen

1. Sternchen (*) Zeichen

Das Erweiterungszeichen Sternchen (*) wird auch als Platzhalterzeichen bezeichnet und stellt null oder mehr Zeichen dar, mit Ausnahme des führenden Punkts (.) einer versteckten Datei. Listen Sie beispielsweise alle Dateien und Verzeichnisse auf, die mit dem Buchstaben f beginnen, gefolgt von null oder mehr anderen Zeichen.

$ ls f*
file.1 file.2 file.3 file4

Ein weiteres Beispiel ist das Auflisten aller Dateien und Verzeichnisse, die mit der Zahl 3 enden, denen null oder mehr Zeichen vorangestellt sind.

$ ls *3
file.3 file3

2. Fragezeichen (?) Zeichen

Das Fragezeichen (?) wird auch als Platzhalterzeichen bezeichnet und steht für ein beliebiges einzelnes Zeichen mit Ausnahme des führenden Punkts (.) einer versteckten Datei. Listen Sie beispielsweise alle Dateien und Verzeichnisse auf, die mit der Zeichenfolge dir beginnen, gefolgt von einem weiteren Zeichen.

 $ ls dir?
dir1:
coffees fruit trees
dir2:
beans notes recipes

Wenn keine Dateien zu einem Eintrag mit dem Fragezeichen (?) passen, erscheint eine Fehlermeldung.

$ ls z?
z?: No such file or directory

3. Eckige Klammern ([]) Zeichen

Die eckige Klammer ([] )-Zeichen stellen eine Menge oder einen Bereich von Zeichen für eine einzelne Zeichenposition dar.
– Eine Zeichenmenge ist eine beliebige Anzahl bestimmter Zeichen, z. B. [acb]. Die Zeichen in einem Satz müssen nicht unbedingt in beliebiger Reihenfolge vorliegen. Beispielsweise ist [abc] dasselbe wie [cab].
– Ein Zeichenbereich ist eine Reihe geordneter Zeichen.

  • Ein Bereich listet das erste Zeichen auf, gefolgt von einem Bindestrich (-) und dem letzten Zeichen, z. B. [a–z] oder [0–9].
  • Wenn Sie einen Bereich angeben, ordnen Sie die Zeichen in der Reihenfolge an, in der sie in der Ausgabe erscheinen sollen.
  • Verwenden Sie beispielsweise [A–Z] oder [a–z], um nach Groß- bzw. Kleinbuchstaben zu suchen.

Listen Sie beispielsweise alle Dateien und Verzeichnisse auf, die mit den Buchstaben a bis f beginnen.

$ ls [a-f]*
brands    dante_1    file.1    file2    file4 
celery    feathers    file1    file.3   fruit 
dante    feathers_6    file.2    file3     fruit2

Listen Sie beispielsweise alle Dateien und Verzeichnisse auf, die mit den Buchstaben f oder p beginnen.

$ ls [fp]*
perm    file.1    file.2    file.3    file4    fruit2
feathers_6   file1    file2     file3     fruit

Die Klammererweiterung

Die Klammer {}-Erweiterung ist ein Mechanismus, mit dem beliebige Zeichenfolgen generiert werden können. Muster, die durch geschweifte Klammern erweitert werden sollen, haben die Form einer optionalen Präambel, gefolgt von entweder einer Reihe von durch Kommas getrennten Zeichenfolgen oder einem Sequenzausdruck zwischen zwei geschweiften Klammern, gefolgt von einem optionalen Postskriptum. Die Präambel „a“ wird jeder Zeichenfolge vorangestellt, die in geschweiften Klammern enthalten ist, und das Postskriptum „e“ wird dann an jede resultierende Zeichenfolge angehängt und von links nach rechts erweitert.

$ echo a{d,c,b}e
ade ace abe


Linux
  1. So ändern Sie die Shell unter Linux

  2. So verwenden Sie den tar-Befehl unter Linux

  3. So verwenden Sie Befehlszeilen-Shell-Funktionen in Linux

  4. So verwenden Sie die Befehlsumleitung unter Linux

  5. Verwendung von Shell-Erweiterungen zum Generieren von Shell-Tokens unter Linux

Wie ich Cockpit für die Linux-Serververwaltung meines Hauses verwende

So suchen Sie unter Linux nach Listening Ports (Ports in use)

So verwenden Sie den Declare-Befehl in der Linux Bash Shell

So installieren und verwenden Sie die ZSH-Shell unter Linux

So installieren und verwenden Sie Nu Shell unter Linux

Wie verwende ich die Linux-Bash-Shell in Windows 10?