Linux Befehle und Erläuterungen
Die wichtigsten Linux-Befehle, die man regelmäßig benötigt.
Wir listen hier die wichtigsten Linux-Befehle auf und wie man sie anwendet.
Als IRC-Server Betreiber wirst Du regelmäßig Eggdrops oder IRCDs installieren, oft über Source -Dateien.
Daher werden wir hier eine Sammlung an Unix und Linux-Befehlen auflisten, damit Du diese schnell nachschlagen kannst. Dieser Abschnitt ist der Aufwendig, Du kannst Befehle jederzeit hinzufügen.
Es ist nicht unser Ziel ein ultimativen Linux Guide zu erstellen, da es bereits tolle Referenzen und Guides gibt, die mit viel Liebe erstellt, gepflegt und kopiert wurden.
Linux Befehle
Es gibt 10 Linux Befehle in diesem Verzeichnis, die mit dem Buchstaben B beginnen.
B
bash
bash mein_irc_skript.sh
führt das Shell-Skript mein_irc_skript.sh aus.
Bash ist ein Unix-Shell-Interpreter, der auf vielen Betriebssystemen verfügbar ist. Es bietet eine schnelle und flexible Möglichkeit, mit dem Betriebssystem zu interagieren und komplexe Aufgaben auszuführen. Die Bash-Shell verfügt über viele integrierte Befehle und unterstützt auch die Verwendung von Skripten, die ausführbare Befehle und Variablen enthalten können. Es ist auch möglich, benutzerdefinierte Funktionen zu erstellen und in Skripten zu verwenden. Bash eignet sich hervorragend zum Automatisieren von Aufgaben und zur Verwaltung von Systemen auf der Kommandozeile.
Zur Info:
es gibt verschiedene Alternativen zum Bash-Shell-Interpreter. Einige Beispiele sind:
Bash (Bourne Again Shell):
Eine Unix-Shell und Befehlssprache, die in vielen Betriebssystemen, wie Linux, verwendet wird, um Befehle einzugeben und Skripte auszuführen.
Führe ein Skript mit ./skript.sh aus.
bash -c "command": Führe einen einzelnen Befehl in einer neuen Bash-Instanz aus.
bash -x script.sh: Führt ein Skript mit Debugging-Informationen aus (zeigt jeden Befehl vor der Ausführung).
bash --version: Zeigt die Version der Bash-Shell an.
bash --login: Startet eine neue Login-Shell.
bash --noprofile Ignoriert die Profile-Dateien
bash --norc Ignoriert die .bashrc
bash --rcfile Übernimmt die übergebene bashrc Datei
MAN-Befehl: man bashEingereicht durch: Schutzgeist
bash, man liest es so oft !
bash ist ein Unix-Shell-Interpreter.
Bash-Beispiel:
bash mein_irc_skript.sh
führt das Shell-Skript mein_irc_skript.sh aus.
Bash ist ein Unix-Shell-Interpreter, der auf vielen Betriebssystemen verfügbar ist. Es bietet eine schnelle und flexible Möglichkeit, mit dem Betriebssystem zu interagieren und komplexe Aufgaben auszuführen. Die Bash-Shell verfügt über viele integrierte Befehle und unterstützt auch die Verwendung von Skripten, die ausführbare Befehle und Variablen enthalten können. Es ist auch möglich, benutzerdefinierte Funktionen zu erstellen und in Skripten zu verwenden. Bash eignet sich hervorragend zum Automatisieren von Aufgaben und zur Verwaltung von Systemen auf der Kommandozeile.
Zur Info:
es gibt verschiedene Alternativen zum Bash-Shell-Interpreter. Einige Beispiele sind:
- Zsh (Z-Shell): Ein erweiterter Shell-Interpreter, der viele Funktionen und Konfigurationsoptionen bietet.
- Fish (Friendly Interactive SHell): Eine Shell, die auf eine einfache und benutzerfreundliche Benutzeroberfläche ausgelegt ist und eine automatische Vervollständigung von Befehlen und Variablen bietet.
- PowerShell: Eine von Microsoft entwickelte Shell, die hauptsächlich auf Windows-Systemen verwendet wird. Es ist eine leistungsstarke und erweiterbare Shell, die auf der .NET-Plattform basiert.
- Tcsh (Tenex C Shell): Eine verbesserte Version der C-Shell mit zusätzlichen Funktionen und Syntaxerweiterungen.
Linux-Befehl bash -l oder bash --login
Bash (Bourne Again Shell):
Eine Unix-Shell und Befehlssprache, die in vielen Betriebssystemen, wie Linux, verwendet wird, um Befehle einzugeben und Skripte auszuführen.
Linux-Befehl: bash Anwendungsbeispiel:
Führe ein Skript mit ./skript.sh aus.
Weitere Bash Befehle und Optionen:
bash -c "command": Führe einen einzelnen Befehl in einer neuen Bash-Instanz aus.
bash -x script.sh: Führt ein Skript mit Debugging-Informationen aus (zeigt jeden Befehl vor der Ausführung).
bash --version: Zeigt die Version der Bash-Shell an.
bash --login: Startet eine neue Login-Shell.
bash --noprofile Ignoriert die Profile-Dateien
bash --norc Ignoriert die .bashrc
bash --rcfile Übernimmt die übergebene bashrc Datei
MAN-Befehl: man bash
Bash Linux Kontrollstrukturen
In der Bash-Shell unter Linux gibt es verschiedene Kontrollstrukturen, die Dir helfen, den Fluss eines Programms zu steuern. Diese Strukturen sind fundamental für das Schreiben von Shell-Skripten, insbesondere wenn es darum geht, bestimmte Aufgaben wie die Interaktion mit einem IRC (Internet Relay Chat) Server zu automatisieren. Ich werde die verschiedenen Arten von Schleifen und Kontrollstrukturen erklären, zusammen mit Beispielen, die sich auf IRC beziehen. Außerdem werde ich Dir erklären, wann Du welche Schleifen-Art verwenden solltest und welche Alternativen es gibt.
Die if-else-Struktur ermöglicht es Dir, Entscheidungen basierend auf bestimmten Bedingungen zu treffen. Du verwendest sie, wenn Du verschiedene Aktionen basierend auf verschiedenen Bedingungen ausführen möchtest.
Beispiel:
Überprüfen, ob eine Verbindung zu einem IRC-Server erfolgreich ist
#!/bin/bash
server="irc.irc-mania.de"
port=6667
# Versuche, eine Verbindung zum IRC-Server herzustellen
if nc -z $server $port; then
echo "Verbindung zu $server erfolgreich."
else
echo "Verbindung zu $server fehlgeschlagen."
fi
Wenn Du eine Entscheidung basierend auf einer einzigen Bedingung treffen musst.
Wenn es nur zwei mögliche Pfade gibt (einen für die Bedingung und einen, wenn sie nicht erfüllt ist).
case-Anweisung, wenn es mehrere mögliche Zustände gibt.
Die case-Struktur ist eine Alternative zu mehreren if-else-Anweisungen und wird verwendet, wenn Du mehrere mögliche Werte einer Variablen überprüfen möchtest.
Wenn Du mehrere mögliche Werte einer Variablen vergleichen möchtest.
Wenn Du eine einfache und klare Struktur für Entscheidungen mit vielen Fällen möchtest.
Mehrere if-else-Anweisungen, aber case ist oft übersichtlicher.
for-Schleifen werden verwendet, um über eine Liste von Elementen zu iterieren. Sie sind nützlich, wenn Du eine feste Anzahl von Wiederholungen oder eine Liste von Elementen hast, die Du durchlaufen möchtest.
Beispiel: Überprüfen einer Liste von IRC-Servern
Wenn Du eine bekannte Anzahl von Iterationen hast.
Wenn Du über eine Liste von Elementen iterieren möchtest.
while-Schleifen, wenn die Anzahl der Iterationen nicht bekannt ist.
while-Schleifen werden verwendet, wenn Du eine Bedingung hast, die vor jeder Iteration überprüft wird. Sie sind nützlich, wenn Du nicht weißt, wie viele Iterationen Du benötigst, oder wenn Du so lange iterieren willst, wie eine Bedingung wahr ist.
Wenn Du iterieren musst, bis eine Bedingung erfüllt ist.
Wenn die Anzahl der Iterationen nicht festgelegt ist.
Alternative:
until-Schleifen, die das Gegenteil von while sind, iterieren, bis eine Bedingung wahr wird.
until-Schleifen sind das Gegenteil von while-Schleifen. Sie laufen, bis eine Bedingung wahr wird. Sie werden seltener verwendet, sind aber nützlich, wenn Du eine Schleife haben möchtest, die läuft, bis eine bestimmte Bedingung erfüllt ist.
Beispiel: Warten auf eine Verbindung zu einem IRC-Server
Wenn Du eine Schleife benötigst, die solange läuft, bis eine Bedingung wahr wird.
Wenn die Logik besser zu bis eine Bedingung wahr wird passt als zu solange eine Bedingung wahr ist.
Alternative:
while-Schleifen, wenn die Logik besser zu solange eine Bedingung wahr ist passt.
Verlasse die Schleife sofort, unabhängig von der aktuellen Bedingung.
Beende das Durchsuchen von Servern, sobald einer erfolgreich verbunden ist.
Setze die Schleife fort, überspringe aber den aktuellen Schleifendurchlauf.
Beispiel: Überspringe die Verbindung, wenn ein Server bereits verbunden ist.
Wenn Du die Schleife vorzeitig beenden möchtest, z.B. wenn ein Ziel erreicht wurde.
Wenn Du den aktuellen Schleifendurchlauf überspringen, aber die Schleife fortsetzen möchtest.
Eingereicht durch: Schutzgeist
Kleiner Exkurs: Kontrollstrukturen:
In der Bash-Shell unter Linux gibt es verschiedene Kontrollstrukturen, die Dir helfen, den Fluss eines Programms zu steuern. Diese Strukturen sind fundamental für das Schreiben von Shell-Skripten, insbesondere wenn es darum geht, bestimmte Aufgaben wie die Interaktion mit einem IRC (Internet Relay Chat) Server zu automatisieren. Ich werde die verschiedenen Arten von Schleifen und Kontrollstrukturen erklären, zusammen mit Beispielen, die sich auf IRC beziehen. Außerdem werde ich Dir erklären, wann Du welche Schleifen-Art verwenden solltest und welche Alternativen es gibt.
In a Nutshell
if-else: Verwende es, wenn Du einfache Bedingungen prüfen möchtest.
case: Besser geeignet als if-else für mehrere mögliche Werte einer Variablen.
for: Perfekt für Iterationen über Listen oder eine bekannte Anzahl von Wiederholungen.
while: Verwende es, wenn Du eine Schleife benötigst, die auf einer Bedingung basiert, deren Erfüllung ungewiss ist.
until: Das Gegenteil von while, es läuft, bis die Bedingung wahr wird.
break und continue: Kontrolliere den Fluss innerhalb von Schleifen, indem Du Durchläufe überspringst oder Schleifen abbrichst.
Diese Kontrollstrukturen bilden das Rückgrat der Programmierung in Bash und ermöglichen es Dir, komplexe Skripte zu erstellen, die auf spezifische Bedingungen und Daten reagieren können, wie sie in einer IRC-Umgebung auftreten könnten.
1. If-Else-Strukturen
Die if-else-Struktur ermöglicht es Dir, Entscheidungen basierend auf bestimmten Bedingungen zu treffen. Du verwendest sie, wenn Du verschiedene Aktionen basierend auf verschiedenen Bedingungen ausführen möchtest.
Beispiel:
Überprüfen, ob eine Verbindung zu einem IRC-Server erfolgreich ist
#!/bin/bash
server="irc.irc-mania.de"
port=6667
# Versuche, eine Verbindung zum IRC-Server herzustellen
if nc -z $server $port; then
echo "Verbindung zu $server erfolgreich."
else
echo "Verbindung zu $server fehlgeschlagen."
fi
Wann Du if-else verwenden solltest:
Wenn Du eine Entscheidung basierend auf einer einzigen Bedingung treffen musst.
Wenn es nur zwei mögliche Pfade gibt (einen für die Bedingung und einen, wenn sie nicht erfüllt ist).
IF-Else Alternative:
case-Anweisung, wenn es mehrere mögliche Zustände gibt.
2. Case-Strukturen
Die case-Struktur ist eine Alternative zu mehreren if-else-Anweisungen und wird verwendet, wenn Du mehrere mögliche Werte einer Variablen überprüfen möchtest.
Beispiel:
Reaktion auf verschiedene IRC-Kommandos
#!/bin/bash
command="PRIVMSG"
case $command in
"JOIN")
echo "Ein Benutzer ist dem Kanal beigetreten."
;;
"PART")
echo "Ein Benutzer hat den Kanal verlassen."
;;
"PRIVMSG")
echo "Eine private Nachricht wurde empfangen."
;;
*)
echo "Unbekanntes Kommando."
;;
esac
Wann Du case verwenden solltest:
Wenn Du mehrere mögliche Werte einer Variablen vergleichen möchtest.
Wenn Du eine einfache und klare Struktur für Entscheidungen mit vielen Fällen möchtest.
Case-Alternative:
Mehrere if-else-Anweisungen, aber case ist oft übersichtlicher.
3. For-Schleifen
for-Schleifen werden verwendet, um über eine Liste von Elementen zu iterieren. Sie sind nützlich, wenn Du eine feste Anzahl von Wiederholungen oder eine Liste von Elementen hast, die Du durchlaufen möchtest.
Beispiel: Überprüfen einer Liste von IRC-Servern
#!/bin/bash
servers=("irc.IRC-Mania.com" "irc.irc-mania.de "irc.mania.net")
port=6667
for server in "${servers[@]}"; do
if nc -z $server $port; then
echo "Verbindung zu $server erfolgreich."
else
echo "Verbindung zu $server fehlgeschlagen."
fi
done
Wann Du for verwenden solltest:
Wenn Du eine bekannte Anzahl von Iterationen hast.
Wenn Du über eine Liste von Elementen iterieren möchtest.
For-Alternative:
while-Schleifen, wenn die Anzahl der Iterationen nicht bekannt ist.
4. While-Schleifen
while-Schleifen werden verwendet, wenn Du eine Bedingung hast, die vor jeder Iteration überprüft wird. Sie sind nützlich, wenn Du nicht weißt, wie viele Iterationen Du benötigst, oder wenn Du so lange iterieren willst, wie eine Bedingung wahr ist.
Beispiel: Wiederholte Verbindung zu einem IRC-Server bis zum Erfolg
#!/bin/bash
server="irc.example.com"
port=6667
connected=0
while [ $connected -eq 0 ]; do
if nc -z $server $port; then
echo "Verbindung zu $server erfolgreich."
connected=1
else
echo "Verbindung fehlgeschlagen, erneuter Versuch..."
sleep 5
fi
done
Wann Du while verwenden solltest:
Wenn Du iterieren musst, bis eine Bedingung erfüllt ist.
Wenn die Anzahl der Iterationen nicht festgelegt ist.
Alternative:
until-Schleifen, die das Gegenteil von while sind, iterieren, bis eine Bedingung wahr wird.
5. Until-Schleifen
until-Schleifen sind das Gegenteil von while-Schleifen. Sie laufen, bis eine Bedingung wahr wird. Sie werden seltener verwendet, sind aber nützlich, wenn Du eine Schleife haben möchtest, die läuft, bis eine bestimmte Bedingung erfüllt ist.
Beispiel: Warten auf eine Verbindung zu einem IRC-Server
#!/bin/bash
server="irc.irc-mania.net"
port=6667
until nc -z $server $port; do
echo "Warten auf Verbindung zu $server ..."
sleep 5
done
echo "Verbindung zu $server erfolgreich."
Wann Du until verwenden solltest:
Wenn Du eine Schleife benötigst, die solange läuft, bis eine Bedingung wahr wird.
Wenn die Logik besser zu bis eine Bedingung wahr wird passt als zu solange eine Bedingung wahr ist.
Alternative:
while-Schleifen, wenn die Logik besser zu solange eine Bedingung wahr ist passt.
6. Break und Continue
break:
Verlasse die Schleife sofort, unabhängig von der aktuellen Bedingung.
Beispiel:
Beende das Durchsuchen von Servern, sobald einer erfolgreich verbunden ist.
for server in "${servers[@]}"; do
if nc -z $server $port; then
echo "Verbindung zu $server erfolgreich."
break
fi
done
continue:
Setze die Schleife fort, überspringe aber den aktuellen Schleifendurchlauf.
Beispiel: Überspringe die Verbindung, wenn ein Server bereits verbunden ist.
for server in "${servers[@]}"; do
if [ "$server" == "irc.irc-mania.de" ]; then
continue
fi
nc -z $server $port && echo "$server ist erreichbar."
done
Wann Du break und continue verwenden solltest:
break:
Wenn Du die Schleife vorzeitig beenden möchtest, z.B. wenn ein Ziel erreicht wurde.
continue:
Wenn Du den aktuellen Schleifendurchlauf überspringen, aber die Schleife fortsetzen möchtest.
Bash-Variablen
Bash-Variablen sind ein vielseitiges Werkzeug zur Verwaltung von Daten und Befehlen in der Shell. Sie können verwendet werden, um Skripte dynamischer und flexibler zu gestalten, da sie Daten speichern und wiederverwenden, Operationen ausführen und die Systemumgebung anpassen können. Das Verständnis der grundlegenden Mechanismen von Bash-Variablen ist essenziell für das effiziente Arbeiten mit der Shell und das Schreiben leistungsfähiger Skripte.
Bash-Variablen sind grundlegende Elemente in der Bash-Shell, die verwendet werden, um Daten zu speichern und zu manipulieren. Sie können Zeichenketten, Zahlen, Dateipfade, Befehle und andere Arten von Daten enthalten. Hier ist eine detaillierte Übersicht über Bash-Variablen, ihre Deklaration, Verwendung, Typen und spezielle Variablen.
In Bash müssen Variablen nicht explizit deklariert werden, bevor sie verwendet werden. Sie werden einfach durch Zuweisung eines Wertes erstellt.
Beispiel:
var="Hello, IRC-World!"
number=42
Zuweisung:
Variablenzuweisungen erfolgen ohne Leerzeichen um das Gleichheitszeichen =.
Beispiel:
myvar="Wert"
Zugriff auf Variablen:
Um den Wert einer Variablen zu verwenden, wird das Dollarzeichen $ verwendet.
Beispiel:
echo $var
Leere Variablen:
Eine Variable kann leer oder null sein.
2. Arten von Variablen
Diese Variablen sind nur innerhalb des aktuellen Skripts oder der aktuellen Shell-Sitzung verfügbar.
Beispiel:
local_var="Ich bin lokal"
Diese Variablen sind global und werden an alle Unterprozesse vererbt.
Sie werden mit dem Befehl export erstellt.
Beispiel:
export GLOBAL_VAR="Ich bin global"
Dies sind spezielle Variablen, die verwendet werden, um die Argumente eines Skripts zu referenzieren.
Beispiel:
echo "Das erste Argument ist $1"
echo "Script name: $0"
echo "Anzahl der Argumente: $#"
3. Parameter und Argumente
$1, $2, … sind Positionsparameter, die die Argumente repräsentieren, die an das Skript oder die Funktion übergeben werden.
Beispiel:
echo "Erstes Argument: $1"
echo "Zweites Argument: $2"
Der Befehl shift verschiebt die Position der Positionsparameter nach links. $2 wird zu $1, $3 zu $2 usw.
Beispiel:
shift
echo "Nach shift: Erstes Argument: $1"
Standardmäßig sind Variablen in Bash global und können von jedem Teil des Skripts aus aufgerufen werden.
local wird verwendet, um eine Variable auf den Bereich der Funktion zu beschränken.
Beispiel:
function my_func {
local local_var="Lokal"
echo $local_var
}
Bash unterstützt grundlegende arithmetische Operationen über die $((...)) Syntax.
Beispiel:
a=5
b=10
sum=$((a + b))
echo "Summe: $sum"
Inkrement und Dekrement:
++ und -- können verwendet werden, um Variablen inkrementell oder dekrementell zu ändern.
Beispiel:
count=0
count=$((count + 1))
echo "Count: $count"
Zeichenketten können durch einfache Zuweisung miteinander verkettet werden.
Beispiel:
str1="Hello"
str2="World"
greeting="$str1, $str2!"
echo $greeting
Stringlänge:
Die Länge einer Zeichenkette kann mit ${#variable} abgerufen werden.
Beispiel:
echo "Länge: ${#greeting}"
Substring-Extraktion:
Mit ${variable:position:length} kann ein Teilstring extrahiert werden.
Beispiel:
echo ${greeting:7:5} # Ausgabe: World
Die Syntax ${variable/pattern/replacement} wird verwendet, um Muster in einer Zeichenkette zu ersetzen.
Beispiel:
echo ${greeting/World/Bash} # Ausgabe: Hello, Bash!
${variable:-default}: Verwendet default, wenn die Variable nicht gesetzt ist.
Beispiel:
echo ${username:-Guest}
Variableninhalt prüfen:
${variable:?error message}: Gibt eine Fehlermeldung aus, wenn die Variable nicht gesetzt ist.
Beispiel:
echo ${username:?Username is not set}
Um eine Variable in den globalen Bereich zu exportieren, wird export verwendet.
Beispiel:
export PATH=$PATH:/custom/path
9. Untersuchen und Löschen von Variablen
Existenz prüfen:
Sie können prüfen, ob eine Variable gesetzt ist, indem Sie die [ -z "$variable" ] oder [ -n "$variable" ] Syntax verwenden.
Beispiel:
if [ -z "$var" ]; then
echo "Variable is empty"
fi
Löschen einer Variablen:
Eine Variable kann mit unset gelöscht werden.
Beispiel:
unset var
10. Eingebaute Bash-Variablen
$HOME: Das Home-Verzeichnis des aktuellen Benutzers.
$PATH: Liste von Verzeichnissen, in denen nach ausführbaren Dateien gesucht wird.
$PWD: Das aktuelle Arbeitsverzeichnis.
$SHELL: Der Name der laufenden Shell.
$USER: Der Name des aktuellen Benutzers.
$RANDOM: Eine zufällige Zahl.
$HOSTNAME: Der Hostname des Systems.
Bash-Variablen - Wissenswertes Tutorial, um alle Arten von Bash-Variablen zu verstehen.
Bash-Variablen sind grundlegende Elemente in der Bash-Shell, die verwendet werden, um Daten zu speichern und zu manipulieren. Sie können Zeichenketten, Zahlen, Dateipfade, Befehle und andere Arten von Daten enthalten. Hier ist eine detaillierte Übersicht über Bash-Variablen, ihre Deklaration, Verwendung, Typen und spezielle Variablen.
1. Deklaration und Zuweisung von Variablen
Deklaration:
In Bash müssen Variablen nicht explizit deklariert werden, bevor sie verwendet werden. Sie werden einfach durch Zuweisung eines Wertes erstellt.
Beispiel:
var="Hello, IRC-World!"
number=42
Zuweisung:
Variablenzuweisungen erfolgen ohne Leerzeichen um das Gleichheitszeichen =.
Beispiel:
myvar="Wert"
Zugriff auf Variablen:
Um den Wert einer Variablen zu verwenden, wird das Dollarzeichen $ verwendet.
Beispiel:
echo $var
Leere Variablen:
Eine Variable kann leer oder null sein.
Beispiel:
empty_var=""
2. Arten von Variablen
Lokale Variablen:
Diese Variablen sind nur innerhalb des aktuellen Skripts oder der aktuellen Shell-Sitzung verfügbar.
Beispiel:
local_var="Ich bin lokal"
Umgebungsvariablen:
Diese Variablen sind global und werden an alle Unterprozesse vererbt.
Sie werden mit dem Befehl export erstellt.
Beispiel:
export GLOBAL_VAR="Ich bin global"
Positionsparameter:
Dies sind spezielle Variablen, die verwendet werden, um die Argumente eines Skripts zu referenzieren.
Beispiel:
echo "Das erste Argument ist $1"
Spezielle Variablen:
$$: Prozess-ID der aktuellen Shell.
$?: Exit-Status des letzten Befehls.
$#: Anzahl der übergebenen Argumente.
$*: Alle Argumente als eine einzelne Zeichenkette.
$@: Alle Argumente als separate Zeichenketten.
$0: Name des Skripts.
Beispiel:
echo "Script name: $0"
echo "Anzahl der Argumente: $#"
3. Parameter und Argumente
Positionsparameter:
$1, $2, … sind Positionsparameter, die die Argumente repräsentieren, die an das Skript oder die Funktion übergeben werden.
Beispiel:
echo "Erstes Argument: $1"
echo "Zweites Argument: $2"
Shift:
Der Befehl shift verschiebt die Position der Positionsparameter nach links. $2 wird zu $1, $3 zu $2 usw.
Beispiel:
shift
echo "Nach shift: Erstes Argument: $1"
4. Bash Variable Scoping
Globale Variablen:
Standardmäßig sind Variablen in Bash global und können von jedem Teil des Skripts aus aufgerufen werden.
Lokale Variablen:
local wird verwendet, um eine Variable auf den Bereich der Funktion zu beschränken.
Beispiel:
function my_func {
local local_var="Lokal"
echo $local_var
}
5. Arithmetische Operationen
Arithmetik in Bash:
Bash unterstützt grundlegende arithmetische Operationen über die $((...)) Syntax.
Beispiel:
a=5
b=10
sum=$((a + b))
echo "Summe: $sum"
Inkrement und Dekrement:
++ und -- können verwendet werden, um Variablen inkrementell oder dekrementell zu ändern.
Beispiel:
count=0
count=$((count + 1))
echo "Count: $count"
6. Zeichenkettenoperationen
Zeichenkettenverkettung:
Zeichenketten können durch einfache Zuweisung miteinander verkettet werden.
Beispiel:
str1="Hello"
str2="World"
greeting="$str1, $str2!"
echo $greeting
Stringlänge:
Die Länge einer Zeichenkette kann mit ${#variable} abgerufen werden.
Beispiel:
echo "Länge: ${#greeting}"
Substring-Extraktion:
Mit ${variable:position:length} kann ein Teilstring extrahiert werden.
Beispiel:
echo ${greeting:7:5} # Ausgabe: World
Stringersetzung:
Die Syntax ${variable/pattern/replacement} wird verwendet, um Muster in einer Zeichenkette zu ersetzen.
Beispiel:
echo ${greeting/World/Bash} # Ausgabe: Hello, Bash!
7. Eingebaute Variablenoperationen
Standardwerte verwenden:
${variable:-default}: Verwendet default, wenn die Variable nicht gesetzt ist.
Beispiel:
echo ${username:-Guest}
Variableninhalt prüfen:
${variable:?error message}: Gibt eine Fehlermeldung aus, wenn die Variable nicht gesetzt ist.
Beispiel:
echo ${username:?Username is not set}
8. Exportieren von Variablen
Export:
Um eine Variable in den globalen Bereich zu exportieren, wird export verwendet.
Beispiel:
export PATH=$PATH:/custom/path
9. Untersuchen und Löschen von Variablen
Existenz prüfen:
Sie können prüfen, ob eine Variable gesetzt ist, indem Sie die [ -z "$variable" ] oder [ -n "$variable" ] Syntax verwenden.
Beispiel:
if [ -z "$var" ]; then
echo "Variable is empty"
fi
Löschen einer Variablen:
Eine Variable kann mit unset gelöscht werden.
Beispiel:
unset var
10. Eingebaute Bash-Variablen
$HOME: Das Home-Verzeichnis des aktuellen Benutzers.
$PATH: Liste von Verzeichnissen, in denen nach ausführbaren Dateien gesucht wird.
$PWD: Das aktuelle Arbeitsverzeichnis.
$SHELL: Der Name der laufenden Shell.
$USER: Der Name des aktuellen Benutzers.
$RANDOM: Eine zufällige Zahl.
$HOSTNAME: Der Hostname des Systems.
bc
bc - Ein Kommandozeilenrechner mit Unterstützung für höhere Mathematik.
Beispiel: echo "3*4" | bc gibt das Ergebnis von 3*4 aus.
Dieses Beispiel zeigt nun nicht das jeweilige Potenzial:
Vermutlich wirst Du viele Funktionen über die jeweilige Programmiersprache lösen, die Du verwendest.
Dennoch ein kleines Tutorial oder Exkurs über den Linux Befehl bc:
Der Befehl "bc" steht für "basic calculator" und ist ein Kommandozeilenrechner, der in vielen Unix-basierten Betriebssystemen verfügbar ist. Er kann verwendet werden, um mathematische Ausdrücke zu berechnen, die sowohl einfache als auch komplexe Operationen beinhalten.
Das Grundkonzept von "bc" ist einfach: Geben Sie einfach einen mathematischen Ausdruck ein und "bc" gibt das Ergebnis zurück. Zum Beispiel können wir eine einfache Addition wie folgt durchführen:
shell
Copy code
$ echo 2 + 2 | bc
4
Wie Sie sehen können, haben wir den Ausdruck "2 + 2" an den Befehl "echo" übergeben, der den Ausdruck an "bc" weitergeleitet hat. "bc" hat den Ausdruck berechnet und das Ergebnis "4" zurückgegeben.
Neben den grundlegenden arithmetischen Operationen unterstützt "bc" auch fortgeschrittenere mathematische Funktionen wie Trigonometrie, Exponentialfunktionen, Logarithmen und mehr. Hier ist ein Beispiel, das die Verwendung von "sin" (Sinus) zeigt:
$ echo "s(1)" | bc -l
.8414709848
Hier haben wir "s(1)" als Ausdruck angegeben und "-l" als Option verwendet, um die Mathematikbibliothek von "bc" zu laden. "bc" hat den Sinus von 1 berechnet und das Ergebnis zurückgegeben.
"bc" unterstützt auch Variablen, die in mathematischen Ausdrücken verwendet werden können. Hier ist ein Beispiel, das zeigt, wie man Variablen definiert und verwendet:
$ x=5
$ y=7
$ echo $x + $y | bc
12
Hier haben wir die Variablen "x" und "y" definiert und dann den Ausdruck "$x + $y" an "bc" übergeben. "bc" hat die Variablen ausgewertet und das Ergebnis zurückgegeben.
"bc" unterstützt auch die Verwendung von Schleifen und Bedingungen, was es zu einem leistungsstarken Werkzeug zum Schreiben von Skripten macht. Hier ist ein Beispiel, das zeigt, wie man eine Schleife verwendet, um die Fakultät einer Zahl zu berechnen:
$ n=5
$ fact=1
$ while [ $n -gt 1 ]; do
> fact=$(echo "$fact * $n" | bc)
> n=$(echo "$n - 1" | bc)
> done
$ echo $fact
120
Hier haben wir die Variable "n" definiert und dann eine Schleife verwendet, um die Fakultät von "n" zu berechnen. In jedem Schleifendurchlauf wird die Variable "fact" aktualisiert, indem sie mit "n" multipliziert wird, und die Variable "n" wird um eins reduziert, bis sie eins erreicht. Am Ende gibt der Befehl "echo" das Ergebnis der Fakultät aus.
Zusammenfassend ist "bc" ein leistungsstarker Kommandozeilenrechner, der eine breite Palette von mathematischen Operationen unterstützt und auch die Verwendung von Variablen, Schleifen und Bedingungen ermöglicht.
Durch den hier verwendeten Editor , sind die Beispiele etwas untergegangen.
Beispiel: echo "3*4" | bc gibt das Ergebnis von 3*4 aus.
Dieses Beispiel zeigt nun nicht das jeweilige Potenzial:
Vermutlich wirst Du viele Funktionen über die jeweilige Programmiersprache lösen, die Du verwendest.
Dennoch ein kleines Tutorial oder Exkurs über den Linux Befehl bc:
Der Befehl "bc" steht für "basic calculator" und ist ein Kommandozeilenrechner, der in vielen Unix-basierten Betriebssystemen verfügbar ist. Er kann verwendet werden, um mathematische Ausdrücke zu berechnen, die sowohl einfache als auch komplexe Operationen beinhalten.
Das Grundkonzept von "bc" ist einfach: Geben Sie einfach einen mathematischen Ausdruck ein und "bc" gibt das Ergebnis zurück. Zum Beispiel können wir eine einfache Addition wie folgt durchführen:
shell
Copy code
$ echo 2 + 2 | bc
4
Wie Sie sehen können, haben wir den Ausdruck "2 + 2" an den Befehl "echo" übergeben, der den Ausdruck an "bc" weitergeleitet hat. "bc" hat den Ausdruck berechnet und das Ergebnis "4" zurückgegeben.
Neben den grundlegenden arithmetischen Operationen unterstützt "bc" auch fortgeschrittenere mathematische Funktionen wie Trigonometrie, Exponentialfunktionen, Logarithmen und mehr. Hier ist ein Beispiel, das die Verwendung von "sin" (Sinus) zeigt:
$ echo "s(1)" | bc -l
.8414709848
Hier haben wir "s(1)" als Ausdruck angegeben und "-l" als Option verwendet, um die Mathematikbibliothek von "bc" zu laden. "bc" hat den Sinus von 1 berechnet und das Ergebnis zurückgegeben.
"bc" unterstützt auch Variablen, die in mathematischen Ausdrücken verwendet werden können. Hier ist ein Beispiel, das zeigt, wie man Variablen definiert und verwendet:
$ x=5
$ y=7
$ echo $x + $y | bc
12
Hier haben wir die Variablen "x" und "y" definiert und dann den Ausdruck "$x + $y" an "bc" übergeben. "bc" hat die Variablen ausgewertet und das Ergebnis zurückgegeben.
"bc" unterstützt auch die Verwendung von Schleifen und Bedingungen, was es zu einem leistungsstarken Werkzeug zum Schreiben von Skripten macht. Hier ist ein Beispiel, das zeigt, wie man eine Schleife verwendet, um die Fakultät einer Zahl zu berechnen:
$ n=5
$ fact=1
$ while [ $n -gt 1 ]; do
> fact=$(echo "$fact * $n" | bc)
> n=$(echo "$n - 1" | bc)
> done
$ echo $fact
120
Hier haben wir die Variable "n" definiert und dann eine Schleife verwendet, um die Fakultät von "n" zu berechnen. In jedem Schleifendurchlauf wird die Variable "fact" aktualisiert, indem sie mit "n" multipliziert wird, und die Variable "n" wird um eins reduziert, bis sie eins erreicht. Am Ende gibt der Befehl "echo" das Ergebnis der Fakultät aus.
Zusammenfassend ist "bc" ein leistungsstarker Kommandozeilenrechner, der eine breite Palette von mathematischen Operationen unterstützt und auch die Verwendung von Variablen, Schleifen und Bedingungen ermöglicht.
Durch den hier verwendeten Editor , sind die Beispiele etwas untergegangen.
bg
Ein recht wichtiger Befehl. Viele Programme werden oft im Vordergrund ausgeführt.
Beendet man das Terminal, so wird auch der Prozess beendet.
Gerade, wenn man auf einer Shell arbeitet, ist dies oft nervig.
bg - Startet einen Prozess im Hintergrund.
Beispiel: firefox & startet den Firefox-Browser im Hintergrund.
Ich nutze es hauptsächlich für meine Rootkit-Scanner und Virenscanner:
zum Beispiel:
sudo rkhunter --check &
[1] 12946
$ ^C
1]+ Angehalten sudo rkhunter --check
Es verbirgt auch Risiken, weil man ggf. Rückmeldungen nicht liest. Ggf. wird der Prozess nicht korrekt geladen, dann muss man die Logfiles prüfen.
Beendet man das Terminal, so wird auch der Prozess beendet.
Gerade, wenn man auf einer Shell arbeitet, ist dies oft nervig.
bg - Startet einen Prozess im Hintergrund.
Beispiel: firefox & startet den Firefox-Browser im Hintergrund.
Ich nutze es hauptsächlich für meine Rootkit-Scanner und Virenscanner:
zum Beispiel:
sudo rkhunter --check &
[1] 12946
$ ^C
1]+ Angehalten sudo rkhunter --check
Es verbirgt auch Risiken, weil man ggf. Rückmeldungen nicht liest. Ggf. wird der Prozess nicht korrekt geladen, dann muss man die Logfiles prüfen.
bind
bind - Ermöglicht das Einrichten und Ändern von Tastaturbefehlen.
Beispiel: bind -p zeigt alle aktuell gebundenen Tastenkombinationen an.
Beispiel: bind -p zeigt alle aktuell gebundenen Tastenkombinationen an.
Übermittle ein Linux Befehl