Bash-Kurs 1

Aus Vokabulabor
Zur Navigation springen Zur Suche springen


Links

Zielsetzung

Es soll die grundlegende Nutzung einer Shell gezeigt werden, am Beispiel der Bourne Again SHell (bash).

Spielwiese

# Dateien anzeigen: LiSt
ls
# Anzeigen des aktuellen Verzeichnisses: Print Working Directory
pwd
# Aktuelles Verzeichnis einstellen: Change Directory
cd /etc
# Plattenplatz anzeigen: Disk Free
df -h
# Suche das Wort "root" in der Datei "passwd": grep
grep root passwd
# Zeige den Anfang der Datei passwd: HEAD
head passwd
# Zeige das Ende der Datei passwd: TAIL
tail passwd
# Zeige die ganze Datei os-release: CATalog
cat os-release
# Konsole löschen: clear
clear
# Ins Heimatverzeichnis gehen: Change Directory (ohne Pfad)
cd
# Ein Verzeichnis anlegen: MaKe DIRectory
mkdir examples
cd examples
# Datei /etc/hosts kopieren in das aktuelle Verzeichnis: CoPy
cp /etc/hosts .
# Eine Datei umbenennen von "hosts" nach "server.txt": 
mv hosts server.txt
cp server.txt double.txt
# Datei double.txt löschen: ReMove
rm double.txt

Umleitung

  • Es ist ganz einfach, die Ausgabe eines Befehls in eine Datei zu bringen.
  • Man fügt einfach ein '> DATEI' hinzu:
# Alle Dateien des aktuellen Projekts anzeigen, eine Datei pro Zeile:
ls - 1
# Jetzt leiten wir die Ausgabe in die Datei "filenames.txt" um:
ls -1 > filenames.txt
# .. und schauen die Datei an:
cat filenames.txt

Pipelining

  • Es ist ganz einfach, die Ausgabe eines Befehls als Eingabe in einen anderen Befehl zu bekommen:
  • Man schreibt die Kommandos getrennt mit '|' (Pipe-Symbol).
ls -1 /etc | wc -l
  • ls -1 /etc zeigt alle Dateien an, jeweils eine Datei je Zeile
  • wc -l zeigt die Anzahl Zeilen ("-l") einer Datei an
  • Da die "Eingabedatei" von wc die Ausgabe des Befehls "ls -1" ist, zeigt der Befehl die Anzahl Dateien im Verzeichnis /etc an.