Bash/Builtin: Unterschied zwischen den Versionen

Aus Foxwiki
Zeile 6: Zeile 6:
* Zum Teil gibt es interne und externe Versionen, z. B. 'echo' (intern) und '/bin/echo' (extern).  
* Zum Teil gibt es interne und externe Versionen, z. B. 'echo' (intern) und '/bin/echo' (extern).  


== Gründe für eingebauten Befehlen ==
''' Gründe für eingebauten Befehlen '''
# Behle nicht als Unix-Kommando verfügbar
# Behle nicht als Unix-Kommando verfügbar
#* Beispielsweise  ''source''  
#* Beispielsweise  ''source''  

Version vom 9. April 2022, 11:14 Uhr

Builtins werden die in der Bash eingebauten Befehle genannt

Beschreibung

  • Etliche der besprochenen Shell-Kommandos starten nicht, wie sonst üblich, einen eigenen Prozess, sondern sie werden direkt von der Shell interpretiert und ausgeführt.
  • Teilweise ist keine E/A-Umleitung möglich.
  • Zum Teil gibt es interne und externe Versionen, z. B. 'echo' (intern) und '/bin/echo' (extern).

Gründe für eingebauten Befehlen

  1. Behle 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

builtin-Kommandos

  • Etliche der besprochenen Shell-Kommandos starten nicht, wie sonst üblich, einen eigenen Prozess, sondern sie werden direkt von der Shell interpretiert und ausgeführt.
  • Teilweise ist keine E/A-Umleitung möglich.
  • Zum Teil gibt es interne und externe Versionen, z. B. 'echo' (intern) und '/bin/echo' (extern).

Arten von builtin


Was wird gestartet?

  • type
  • whereis

Builtins ein- und ausschalten

Übersicht

Befehl Beschreibung Link
Null Linux:Shell:Bash:Builtin:null
source Linux:Shell:Bash:Builtin:source
alias Definition einer Abkürzung für ein Kommando Linux:Shell:Bash:Builtin:alias
jobs Listet die Jobnummern aller Hintergrundprozesse auf Linux:Shell:Bash:Builtin:jobs
bind Linux:Shell:Bash:Builtin:bind
break Linux:Shell:Bash:Builtin:break
cd Verzeichnis wechseln Linux:Shell:Bash:Builtin:cd
command Linux:Shell:Bash:Builtin:command
compgen Linux:Shell:Bash:Builtin:compgen
complete Verhalten der Bash bei der Vervollständigung steuern Linux:Shell:Bash:Builtin:complete
continue Linux:Shell:Bash:Builtin:continue
declare Deklarieren von Variablen Linux:Shell:Bash:Builtin:declare
dirs Anzeige des Verzeichnisstacks Linux:Shell:Bash:Builtin:dirs
disown Linux:Shell:Bash:Builtin:disown
echo Eine Zeile Text anzeigen Linux:Shell:Bash:Builtin:echo echo
enable Eingebauten Kommandos der Shell aktivieren Linux:Shell:Bash:Builtin:enable
eval Liest seine Argumente, wobei die üblichen Ersetzungen stattfinden, und führt die resultierende Zeichenkette als Kommando aus. Linux:Shell:Bash:Builtin:eval
exec Das Kommando besitzt zwei Bedeutungen. Linux:Shell:Bash:Builtin:exec
exit Beendet die Shell Linux:Shell:Bash:Builtin:exit
export Exportieren von Variablen Linux:Shell:Bash:Builtin:export
fc Manipulation der History-Einträge Linux:Shell:Bash:Builtin:fc
fg holt einen Hintergrundprozess in den Vordergrund Linux:Shell:Bash:Builtin:fg
getopts Linux:Shell:Bash:Builtin:getopts
hash Linux:Shell:Bash:Builtin:hash
help Schreibt einen kurzen Hilfetext zu einem eingebauten Kommando aus.
history Kommandozeilenspeicher anzeigen Linux:Shell:Bash:Builtin:history
kill Signale an Prozesse senden Linux:Shell:Bash:Builtin:kill
let Für jedes Argument wird eine arithmetische Substitution versucht Linux:Shell:Bash:Builtin:let
local Definition lokaler Variablen Linux:Shell:Bash:Builtin:local
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. Linux:Shell:Bash:Builtin:popd
printf Linux:Shell:Bash:Builtin:printf
pushd Mit dem Kommando kann in ein angegebenes Verzeichnis gewechselt werden, wobei das Verzeichnis auf einem Stack abgelegt wird Linux:Shell:Bash:Builtin:pushd
pwd Gibt das aktuelle Arbeitsverzeichnis aus Linux:Shell:Bash:Builtin:pwd
read Linux:Shell:Bash:Builtin:read
readonly Variablen und Funktionen lassen sich nachträglich als »nicht änderbar« deklarieren. Linux:Shell:Bash:Builtin:readonly
return Rücksprung aus einer Funktion Linux:Shell:Bash:Builtin:return
set Setzen bash-interner Variablen Linux:Shell:Bash:Builtin:set
shift Verschieben der Positionsparameter Linux:Shell:Bash:Builtin:shift
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 Linux:Shell:Bash:Builtin:test
times Zeit der Shell und von ihr gestarteter Kommandos messen Linux:Shell:Bash:Builtin:times
trap Linux:Shell:Bash:Builtin:trap
type Linux:Shell:Bash:Builtin:type
typeset declare
ulimit Linux:Shell:Bash:Builtin:ulimit
umask Zugriffsrechte für neue Dateien steuern Linux:Shell:Bash:Builtin:umask
unalias Löschen von Aliasen
unset Löschen einer Variable oder Funktion
wait Warten auf einen oder alle Hintergrundprozesse Linux:Shell:Bash:Builtin:wait

Links

Dateien

Man-Pages

Intern

Weblinks