Bash/Tildeexpansion: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
'''topic''' kurze Beschreibung
'''topic''' kurze Beschreibung
== Beschreibung ==
== Beschreibung ==
== Installation ==
== Anwendungen ==
== Anwendungen ==
== Anwendungen ==
$ export PATH="$PATH:~/testdir"
~/testdir wird zu $HOME/testdir erweitert.
Wenn $HOME also /home/user ist, wird das Verzeichnis /home/user/testdir der PATH-Variable hinzugefügt.
== Syntax ==
== Syntax ==
=== Optionen ===
=== Optionen ===
Zeile 67: Zeile 72:
* Andernfalls wird das Tilde-Präfix durch das Home-Verzeichnis ersetzt, das dem angegebenen Login-Namen zugeordnet ist.
* Andernfalls wird das Tilde-Präfix durch das Home-Verzeichnis ersetzt, das dem angegebenen Login-Namen zugeordnet ist.


Wenn das Tilde-Präfix "~+" ist, ersetzt der Wert der Shell-Variablen PWD das Tilde-Präfix.  
; Tilde-Präfix
* Wenn das Tilde-Präfix "~+" ist, ersetzt der Wert der Shell-Variablen PWD das Tilde-Präfix.  
* Ist das Tilde-Präfix "~-", wird der Wert der Shell-Variablen OLDPWD, sofern sie gesetzt ist, ersetzt.
* Ist das Tilde-Präfix "~-", wird der Wert der Shell-Variablen OLDPWD, sofern sie gesetzt ist, ersetzt.


Zeile 78: Zeile 84:


Folglich kann man Dateinamen mit Tilden in Zuweisungen an PATH, MAILPATH und CDPATH verwenden, und die Shell weist den erweiterten Wert zu.
Folglich kann man Dateinamen mit Tilden in Zuweisungen an PATH, MAILPATH und CDPATH verwenden, und die Shell weist den erweiterten Wert zu.
== Anwendungen ==
$ export PATH="$PATH:~/testdir"
~/testdir wird zu $HOME/testdir erweitert.
Wenn $HOME also /home/user ist, wird das Verzeichnis /home/user/testdir der PATH-Variable hinzugefügt.


[[Kategorie:Bash:Expansionen]]
[[Kategorie:Bash:Expansionen]]

Version vom 30. Juli 2022, 11:32 Uhr

topic kurze Beschreibung

Beschreibung

Anwendungen

Anwendungen

$ export PATH="$PATH:~/testdir"

~/testdir wird zu $HOME/testdir erweitert.

Wenn $HOME also /home/user ist, wird das Verzeichnis /home/user/testdir der PATH-Variable hinzugefügt.

Syntax

Optionen

Parameter

Umgebungsvariablen

Exit-Status

Konfiguration

Dateien

Sicherheit

Dokumentation

RFC

Man-Pages

Info-Pages

Siehe auch

Links

Projekt-Homepage

Weblinks

Einzelnachweise

Testfragen

Testfrage 1

Antwort1

Testfrage 2

Antwort2

Testfrage 3

Antwort3

Testfrage 4

Antwort4

Testfrage 5

Antwort5

TMP

Tildeexpansion

Beginnt der Wert mit einer unmaskierten Tilde (~), wird versucht, diese zu substituieren.

  • Betrachtet werden alle der Tilde folgenden Zeichen bis zum ersten Schrägstrich (Slash).
  • Ergibt dies eine gültige Benutzerkennung, so expandiert der Ausdruck zum Heimatverzeichnis dieses Benutzers.
  • Folgt der Tilde unmittelbar der Schrägstrich, wird der Ausdruck durch den Inhalt der Variablen HOME ersetzt
  • ist diese nicht gesetzt, wird das Heimatverzeichnis des aktuellen Benutzers angenommen
Beispiel
$ var=~
$ echo $var
$ /home/user
$ var=~root/
$ echo $var
$ /root/

Alle Zeichen bis zum ersten nicht in Anführungszeichen gesetzten Schrägstrich (oder alle Zeichen, wenn es keinen nicht in Anführungszeichen gesetzten Schrägstrich gibt) werden als Tilde-Präfix betrachtet.

  • Wenn keines der Zeichen im Tilde-Präfix in Anführungszeichen steht, werden die Zeichen im Tilde-Präfix, die auf die Tilde folgen, als möglicher Anmeldename behandelt.

Ist dieser Anmeldename eine Nullzeichenkette, wird die Tilde durch den Wert der Shell-Variablen HOME ersetzt.

  • Wenn HOME nicht gesetzt ist, wird stattdessen das Heimatverzeichnis des Benutzers, der die Shell ausführt, verwendet.
  • Andernfalls wird das Tilde-Präfix durch das Home-Verzeichnis ersetzt, das dem angegebenen Login-Namen zugeordnet ist.
Tilde-Präfix
  • Wenn das Tilde-Präfix "~+" ist, ersetzt der Wert der Shell-Variablen PWD das Tilde-Präfix.
  • Ist das Tilde-Präfix "~-", wird der Wert der Shell-Variablen OLDPWD, sofern sie gesetzt ist, ersetzt.

Wenn die Zeichen nach der Tilde im Tilde-Präfix aus einer Zahl N bestehen, der wahlweise ein "+" oder ein "-" vorangestellt ist, wird das Tilde-Präfix durch das entsprechende Element aus dem Verzeichnisstapel ersetzt, wie es von dem mit den Zeichen nach der Tilde im Tilde-Präfix als Argument aufgerufenen dirs built-in angezeigt würde.

  • Wenn der Tilde-Präfix ohne Tilde aus einer Zahl ohne führendes "+" oder "-" besteht, wird "+" angenommen.

Wenn der Anmeldename ungültig ist oder die Tilde-Expansion fehlschlägt, wird das Wort unverändert gelassen.

  • Jede Variablenzuweisung wird auf nicht in Anführungszeichen gesetzte Tilde-Präfixe unmittelbar nach einem ":" oder "=" geprüft.
  • In diesen Fällen wird ebenfalls eine Tilde-Expansion durchgeführt.

Folglich kann man Dateinamen mit Tilden in Zuweisungen an PATH, MAILPATH und CDPATH verwenden, und die Shell weist den erweiterten Wert zu.