Bash/Builtin: Unterschied zwischen den Versionen
KKeine Bearbeitungszusammenfassung |
KKeine Bearbeitungszusammenfassung |
||
Zeile 16: | Zeile 16: | ||
type | type | ||
whereis | whereis | ||
= Links = | |||
== Dateien == | |||
== Man-Pages == | |||
== Intern == | |||
== Weblinks == | |||
{| class="wikitable sortable" | {| class="wikitable sortable" |
Version vom 25. Februar 2022, 11:42 Uhr
Beschreibung
Es gibt eine Fülle solcher eingebauter Kommandos und mindestens 4 Gründe, warum solche in der Bash überhaupt existieren:
- Weil es ein solches Kommando in Unix nicht gibt (Beispiel "source")
- Weil ein builtin Kommando effizienter arbeitet als ein externes Kommando (keine Prozesserzeugung notwendig; Beispiel »echo«)
- Weil nur ein eingebautes Kommando Bash-interne Variablen ändern kann (Beispiel »export«)
- Weil ein Kommando wie »exec« nur innerhalb der Bash realisierbar ist
Betrachten wir die einzelnen 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
Links
Dateien
Man-Pages
Intern
Weblinks
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 | |
command | Linux:Shell:Bash:Builtin:command | |
compgen | Linux:Shell:Bash:Builtin:compgen | |
complete | Mit diesem Kommando kann das ganze Verhalten der Bash bei der Vervollständigung von Argumenten verändert werden | 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 Linux:Befehl: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 | Das Kommando dient zur Anzeige oder Manipulation des Kommandozeilenspeichers. | Linux:Shell:Bash:Builtin:history |
kill | Das Kommando dient der Steuerung bereits laufender Prozesse, indem es an diese Signale versendet. | 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 | [[Linux:Shell:Bash:Builtin:set | set dient zum Setzen bash-interner Variablen]] |
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 | test liefert in Abhängigkeit vom Wahrheitswert des Ausdrucks 0 (wahr) oder 1 (falsch) zurück und ist damit ein wichtiger Bestandteil vieler Shellskripten. | Linux:Shell:Bash:Builtin:test |
times | Misst die Zeit für die Shell und der von dieser gestarteten Kommandos. | 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 | Setzt die Rechtemaske für neu erzeugte Dateien oder Verzeichnisse bzw. zeigt die Rechte an. | Linux:Shell:Bash:Builtin:umask |
unalias | Löscht den angegebenen Alias bzw. mit der Option -a alle Aliasse. | |
unset | Dient zum Löschen einer Variable oder Funktion. | |
wait | Dient zum Warten auf einen oder alle Hintergrundprozesse. | Linux:Shell:Bash:Builtin:wait |