Bash/Builtin: Unterschied zwischen den Versionen

Aus Foxwiki
Zeile 24: Zeile 24:


= Übersicht =
= Übersicht =
{| class="wikitable sortable"
{| class="wikitable sortable"
|-
|-
! Befehl !! Beschreibung !! Link
! Befehl !! Beschreibung
|-
|-
| Null || || [[null]]  
| [[Null]] ||
|-
|-
| source || || [[source]]  
| [[source]] ||
|-
|-
| alias || Definition einer Abkürzung für ein Kommando || [[alias]]
| [[alias]] ||Definition einer Abkürzung für ein Kommando  
|-
|-
| jobs || Listet die Jobnummern aller Hintergrundprozesse auf|| [[jobs]]
| [[jobs]] ||Listet die Jobnummern aller Hintergrundprozesse auf
|-
|-
| bind || || [[bind]]  
| [[bind]] ||
|-
|-
| break || || [[break]]  
| [[break]] ||
|-
|-
| cd || Verzeichnis wechseln || [[cd]]
| [[cd]] ||Verzeichnis wechseln  
|-
|-
| command || || [[command]]  
| [[command]] ||
|-
|-
| compgen || || [[compgen]]  
| [[compgen]] ||
|-
|-
| complete || Verhalten der Bash bei der Vervollständigung steuern|| [[complete]]
| [[complete]] ||Verhalten der Bash bei der Vervollständigung steuern
|-
|-
| continue || || [[continue]]  
| [[continue]] ||
|-
|-
| declare || Deklarieren von Variablen|| [[declare]]
| [[declare]] ||Deklarieren von Variablen
|-
|-
| dirs || Anzeige des Verzeichnisstacks|| [[dirs]]
| [[dirs]] ||Anzeige des Verzeichnisstacks
|-
|-
| disown || || [[disown]]  
| [[disown]] ||
|-
|-
| echo || Eine Zeile Text anzeigen|| [[echo]] [[echo]]
| [[echo]] ||Eine Zeile Text anzeigen
|-
|-
| enable || Eingebauten Kommandos der Shell aktivieren|| [[enable]]
| [[enable]] ||Eingebauten Kommandos der Shell aktivieren
|-
|-
| eval || Liest seine Argumente, wobei die üblichen Ersetzungen stattfinden, und führt die resultierende Zeichenkette als Kommando aus. || [[eval]]
| [[eval]] ||Liest seine Argumente, wobei die üblichen Ersetzungen stattfinden, und führt die resultierende Zeichenkette als Kommando aus.  
|-
|-
| exec || Das Kommando besitzt zwei Bedeutungen. || [[exec]]
| [[exec]] ||Das Kommando besitzt zwei Bedeutungen.  
|-
|-
| exit || Beendet die Shell|| [[exit]]
| [[exit]] ||Beendet die Shell
|-
|-
| export || Exportieren von Variablen|| [[export]]
| [[export]] ||Exportieren von Variablen
|-
|-
| fc || Manipulation der History-Einträge|| [[fc]]
| [[fc]] ||Manipulation der History-Einträge
|-
|-
| fg || holt einen Hintergrundprozess in den Vordergrund|| [[fg]]
| [[fg]] ||holt einen Hintergrundprozess in den Vordergrund
|-
|-
| getopts || || [[getopts]]  
| [[getopts]] ||
|-
|-
| hash || || [[hash]]  
| [[hash]] ||
|-
|-
| help || Schreibt einen kurzen Hilfetext zu einem eingebauten Kommando aus. ||
| [[help]] ||Schreibt einen kurzen Hilfetext zu einem eingebauten Kommando aus.
|-
|-
| history || Kommandozeilenspeicher anzeigen || [[history]]
| [[history]] ||Kommandozeilenspeicher anzeigen  
|-
|-
| kill || Signale an Prozesse senden || [[kill]]
| [[kill]] ||Signale an Prozesse senden  
|-
|-
| let || Für jedes Argument wird eine arithmetische Substitution versucht || [[let]]
| [[let]] ||Für jedes Argument wird eine arithmetische Substitution versucht  
|-
|-
| local || Definition lokaler Variablen|| [[local]]
| [[local]] ||Definition lokaler Variablen
|-
|-
| logout || Beendet eine Login-Bash und meldet den Benutzer ab. In einer Nicht-Login-Bash wird eine Fehlermeldung ausgegeben. ||
| [[logout]] ||Beendet eine Login-Bash und meldet den Benutzer ab. In einer Nicht-Login-Bash wird eine Fehlermeldung ausgegeben.
|-
|-
| popd || Entfernt den obersten Eintrag vom Verzeichnisstack und wechselt zum neuen obersten Verzeichniseintrag. || [[popd]]
| [[popd]] ||Entfernt den obersten Eintrag vom Verzeichnisstack und wechselt zum neuen obersten Verzeichniseintrag.  
|-
|-
| printf || || [[printf]]  
| [[printf]] ||
|-
|-
| pushd || Mit dem Kommando kann in ein angegebenes Verzeichnis gewechselt werden, wobei das Verzeichnis auf einem Stack abgelegt wird || [[pushd]]
| [[pushd]] ||Mit dem Kommando kann in ein angegebenes Verzeichnis gewechselt werden, wobei das Verzeichnis auf einem Stack abgelegt wird  
|-
|-
| pwd || Gibt das aktuelle Arbeitsverzeichnis aus || [[pwd]]
| [[pwd]] ||Gibt das aktuelle Arbeitsverzeichnis aus  
|-
|-
| read || || [[read]]  
| [[read]] ||
|-
|-
| readonly || Variablen und Funktionen lassen sich nachträglich als »nicht änderbar« deklarieren. || [[readonly]]
| [[readonly]] ||Variablen und Funktionen lassen sich nachträglich als »nicht änderbar« deklarieren.  
|-
|-
| return || Rücksprung aus einer Funktion || [[return]]
| [[return]] ||Rücksprung aus einer Funktion  
|-
|-
| set || Setzen bash-interner Variablen ||[[set]]  
| [[set]] ||Setzen bash-interner Variablen ||[[set]]  
|-
|-
| shift || Verschieben der Positionsparameter || [[shift]]
| [[shift]] ||Verschieben der Positionsparameter  
|-
|-
| shopt || Dient zum Setzen bash-interner Variablen, die das Verhalten der Shell maßgeblich beeinflussen ||
| [[shopt]] ||Dient zum Setzen bash-interner Variablen, die das Verhalten der Shell maßgeblich beeinflussen
|-
|-
| suspend || Suspendiert die Shell. Sie kann nur durch ein Signal SIGCONT reaktiviert werden. ||
| [[suspend]] ||Suspendiert die Shell. Sie kann nur durch ein Signal SIGCONT reaktiviert werden.
|-
|-
| test || Bedingungen prüfen || [[test]]
| [[test]] ||Bedingungen prüfen  
|-
|-
| times || Zeit der Shell und von ihr gestarteter Kommandos messen || [[times]]
| [[times]] ||Zeit der Shell und von ihr gestarteter Kommandos messen  
|-
|-
| trap || || [[trap]]  
| [[trap]] ||
|-
|-
| type || || [[type]]  
| [[type]] ||
|-
|-
| typeset || || declare  
| [[typeset]] ||declare  
|-
|-
| ulimit || || [[ulimit]]  
| [[ulimit]] ||
|-
|-
| umask || Zugriffsrechte für neue Dateien steuern || [[umask]]
| [[umask]] ||Zugriffsrechte für neue Dateien steuern  
|-
|-
| unalias || Löschen von Aliasen ||
| [[unalias]] ||Löschen von Aliasen ||
|-
|-
| unset || Löschen einer Variable oder Funktion ||
| [[unset]] ||Löschen einer Variable oder Funktion ||
|-
|-
| wait || Warten auf einen oder alle Hintergrundprozesse || [[wait]]
| [[wait]] ||Warten auf einen oder alle Hintergrundprozesse  
|}
|}



Version vom 26. Mai 2022, 21:10 Uhr

Builtins (eingebaute Befehle) sind Kommandos, die von der Shell bereitgestellt werden

Beschreibung

  • keinen eigenen Prozess
  • von der Shell interpretiert und ausgeführt
  • Manchmal gibt es eine eingebaute und eine externe Version
    • 'echo' (intern) und '/bin/echo' (extern)

Gründe für eingebauten Befehlen

  1. Befehl nicht als Unix-Kommando verfügbar
    • Beispielsweise source
  2. Weil ein builtin Kommando effizienter arbeitet
    • als ein externes Kommando (keine Prozesserzeugung notwendig; Beispiel »echo«)
  3. Weil nur ein eingebautes Kommando Bash-interne Variablen ändern kann (Beispiel »export«)
  4. Weil ein Kommando wie »exec« nur innerhalb der Bash realisierbar ist

Arten von builtin

Was wird gestartet?

  • type
  • whereis

Builtins ein- und ausschalten

Übersicht

Befehl Beschreibung
Null
source
alias Definition einer Abkürzung für ein Kommando
jobs Listet die Jobnummern aller Hintergrundprozesse auf
bind
break
cd Verzeichnis wechseln
command
compgen
complete Verhalten der Bash bei der Vervollständigung steuern
continue
declare Deklarieren von Variablen
dirs Anzeige des Verzeichnisstacks
disown
echo Eine Zeile Text anzeigen
enable Eingebauten Kommandos der Shell aktivieren
eval Liest seine Argumente, wobei die üblichen Ersetzungen stattfinden, und führt die resultierende Zeichenkette als Kommando aus.
exec Das Kommando besitzt zwei Bedeutungen.
exit Beendet die Shell
export Exportieren von Variablen
fc Manipulation der History-Einträge
fg holt einen Hintergrundprozess in den Vordergrund
getopts
hash
help Schreibt einen kurzen Hilfetext zu einem eingebauten Kommando aus.
history Kommandozeilenspeicher anzeigen
kill Signale an Prozesse senden
let Für jedes Argument wird eine arithmetische Substitution versucht
local Definition lokaler Variablen
logout Beendet eine Login-Bash und meldet den Benutzer ab. In einer Nicht-Login-Bash wird eine Fehlermeldung ausgegeben.
popd Entfernt den obersten Eintrag vom Verzeichnisstack und wechselt zum neuen obersten Verzeichniseintrag.
printf
pushd Mit dem Kommando kann in ein angegebenes Verzeichnis gewechselt werden, wobei das Verzeichnis auf einem Stack abgelegt wird
pwd Gibt das aktuelle Arbeitsverzeichnis aus
read
readonly Variablen und Funktionen lassen sich nachträglich als »nicht änderbar« deklarieren.
return Rücksprung aus einer Funktion
set Setzen bash-interner Variablen set
shift Verschieben der Positionsparameter
shopt Dient zum Setzen bash-interner Variablen, die das Verhalten der Shell maßgeblich beeinflussen
suspend Suspendiert die Shell. Sie kann nur durch ein Signal SIGCONT reaktiviert werden.
test Bedingungen prüfen
times Zeit der Shell und von ihr gestarteter Kommandos messen
trap
type
typeset declare
ulimit
umask Zugriffsrechte für neue Dateien steuern
unalias Löschen von Aliasen
unset Löschen einer Variable oder Funktion
wait Warten auf einen oder alle Hintergrundprozesse

Links

Dateien

Man-Pages

Intern

Weblinks