Ist Bash dasselbe wie Linux und Shell (Programmierung)?

6 Antworten

Linux ist ein Betriebssystem (bzw. streng genommen nur der Kernel), hat mit den anderen beiden also nur bedingt miteinander zu tun.

Bash ist eine Shell. Aber nicht jede Shell ist Bash. Es gibt auch andere Shells, "zsh" bspw. ist mittlerweile recht stark verbreitet.

Woher ich das weiß:Berufserfahrung – Inhaber einer App-Agentur & 15+ Jahre Programmiererfahrung

Die Bash ist eine Shell, die innerhalb deines unioxiden Betriebssystems läuft und dir eine textbasierte Benutzeroberfläche (CLI) bietet. Es gibt viel Shells mit unterschiedlichen (Zusatz-)Möglichkeiten. Dem gegenüber steht die grafische Benutzeroberfläche (GUI), in der ein Terminal „nur noch“ eine von vielen Arten ist, mit dem System zu arbeiten.

Programmierung, also das Erzeugen von Quellcode, der nach dem Kompilieren dann ein ausführbares Programm ist, Scripting in all seinen Formen, oder auch einfache Textverarbeitung werden mit Hilfe von Texteditoren gemacht. Texteditoren können i.d.R. unabhängig von der Betriebsart CLI oder GUI im Terminal verwendet werden.

nein! Linux ist "nur" der Kern eines Linux-Betriebssystems. Um den Kern herum laufen andere Programme. Im Modell kann man die als Schalen, wie bei einer Zwiebel darstellen.

Für die Kommunikation des Kerns mit einem Benutzer (als Person) oder aber zur Kommunikation mit anderen Programmen gibt es die Shell-Programme. Mehrzahl, weil es mehrere solcher Shell-Programme gibt. Das sind z.B. die sh , die ksh, die csh, die tclsh ....
Unter Linux ist die bash die Standard-Shell, die aber jederzeit durch eine andere ersetzt werden kann.

Mit Shell-Programmen werden kleiner Aufgaben erledigt. Größere Programme werden z.B. in den Sprachen C und C++ geschrieben.

Shell-Programme bieten nur wenige Möglichkeiten, grafische Elemente einzubeziehen. Sie sind daher vorrangig, wie der Name schon sagt, um den Kern (Kernel , Linux) angeordnet.

Woher ich das weiß:Berufserfahrung – openSuSE seit 1995

Bash (auch BASH oder bash), die Bourne-again shell, ist eine freie Unix-Shell unter GPL. Also können unterscheide Bestehen, da Bash eine spezielle Shell meint. Linux Programmierung kann ja auch C++ oder Python, bzw. jede andere Programmiersprache sein.

Woher ich das weiß:Studium / Ausbildung – Informatikstudent
iQa1x  10.05.2020, 15:17

Ergänzung: Natürlich gibt es noch viele andere Shells, und Bash gibt es auch nicht nur für Linux, sondern auch für andere Systeme

1

Grob gesprochen: Ja.

Genauer: Bash ist eine der (zahlreichen) Skriptsprachen, mit denen sich sog. Shell Scripts schreiben lassen: Man versteht darunter einfache Skripts, deren jedes i.W. nur eine Folge von Befehlen darstellt, welche man auch direkt auf der Linix-Kommandozeile eingeben könnte. "Im Wesentlichen" deshalb, weil man auch Verzeigungen und Schleifen haben kann.

Shell Skripts entsprechen dem, was auf Windows BAT Files sind.