Linux für Anwendungsentwicklung

Arbeitsschritte für die Händische Installation: hier

  • Übersicht Virtualisierung: hier

Unterrichtsmaterialien

Katzenbilder und Astronaut für die Arbeit mit Gimp

Befehle

cd; cd ..
ls; ls -l; dir
mv [quelle] [ziel]
cp [quelle] [ziel]
rm [datei]
mkdir [verzeichnis]
rmdir [verzeichnis]
echo [text ...]
touch [datei]
cat [datei ...]
chmod [berechtigungen] [datei|verzeichnis]
chgrp [gruppe] [datei|verzeichnis]
chown [user] [datei|verzeichnis]
apt-get update
apt-get upgrade
apt-get install [paket ...]
apt-get remove [paket]
apt-get autoremove
apt-cache search [stichwort]
apt-cache show [paket]
apt [update|install|search|show]
dpkg; dpkg --install; dpkg -L [paket]
find
sort
less
(split)
cut
uniq
tee [datei ...]
wc
lsblk
fdisk [device]
dd [if=datei] [of=datei] [count=|seek=|bs=]
mount [device] [verzeichnis]
umount [verzeichnis]
chroot [verzeichnis]
sync
kill [PID]
pstree
ps; ps -e -o pid,user,command; ps aux
htop
fg; bg
sudo ...
su
man [befehl]
clear; Strg + L
exit
git ...
make
crontab -l; crontab -e
adduser [username]
adduser [username] [group]
addgroup [groupname]

Syntax

befehl >datei
befehl >>datei
befehl |befehl

Config-Dateien

/etc/fstab

/etc/passwd
/etc/group
/etc/shadow

~/.bash_history
~/.profile
~/.bashrc

/etc/skel/

Reguläre Ausdrücke

Umgangssprache: Regular Expression / Regulärer Ausdruck / RegEx / RE

Plural: RegExes / RegExen (auch im englischen, idR. humoristisch)

Einzelne Zeichen

  • a, b, C, 0 usw. Buchstaben und Ziffern stehen einfach für sich selbst, a "matcht" den Buchstaben a usw.
  • <, ~, " Etliche Sonderzeichen haben keine spezielle Bedeutung und stehen wie Buchstaben und Ziffern für sich selbst.
  • . Der Punkt steht für ein beliebiges Zeichen
  • \. Mit einem vorangestellten Backslash ist es wieder einfach nur ein Punkt
  • \?, \+, \*, \\ Gleiches gilt für andere Zeichen, die sonst eine besondere Bedeutung erhalten
  • ^ steht (außerhalb von eckigen Klammern) für den Zeilenanfang
  • $ steht für das Zeilenende

Beispiel: Esel ist eine Abfolge von Buchstaben und trifft auf das Wort "Esel" zu. E.el trifft auf "Esel", "Egel", "Ekel" zu, aber auch auf Fantasieworte wie "Exel" oder "E%el".

Bracket Expressions

  • [abc] Ausdrücke in eckigen Klammern treffen auf ein beliebiges Zeichen aus der angegebenen Menge zu
  • [a-m], [A-Z], [3-9] Die Menge in eckigen Klammern kann auch als Zeichenbereich (Character Range) angegeben werden
  • [0-9a-z] Es dürfen mehrere Ranges auftauchen
  • [^0-9], [^aeou] Ist das erste Zeichen ein ^ (Circumflex), wir die Menge negiert, sie steht dann für ein beliebiges Zeichen, außer für die angegebenen
  • [-+*/] Enthält eine Menge ein Minuszeichen, muss dies am Anfang oder Ende stehen, so dass die Menge nicht als Range erkannt wird
  • [])}>], [^])}>] enthält eine Menge selbst eine schließende eckige Klammer (]) muss diese ganz am Anfang stehen
  • [*+^$] Innerhalb eckiger Klammern verlieren die meisten Sonderzeichen ihre besondere Bedeutung (so als stünde ein \ davor).

Quantifizierer und Grenzen (Bounds)

Ein Bound kann einem Atom (d.h. einem "Teil des Ausdrucks", einem Zeichen, einer Bracket Expression, etc. folgen) folgen (z.B. m+, oder [^a-z]?)

  • ? Das vorhergehende Atom kann einmal vorkommen, muss aber nicht
  • + Das vorhergehende Atom kann einmal oder mehrmals (beliebig oft) vorkommen
  • * Das vorhergehende Atom kann beliebig oft, oder gar nicht vorkommen
  • {5} Das Atom kommt genau fünfmal vor
  • {2,14} Das Atom kommt mindestens zweimal, höchstend vierzehnmal vor
  • {2,} Das Atom kommt mindestens zweimal oder beliebig viel häufiger vor
  • {,14} Das Atom kommt höchstens vierzehnmal vor, braucht aber gar nicht oder weniger häufig auftauchen

Unterausdrücke (Sub-expresssions)

  • (foobar) ist zunächst einmal das gleiche wie foobar
  • (foobar)+ ist eine beliebig häufige Wiederholung des Wortes foobar

    • foobar+ dagegen wäre eine beliebige Wiederholung des Buchstaben r im Wort foobar
  • → Runde Klammern fassen eine Zeichenfolge zu einem Atom zusammen
  • (foobar|schnabbeldiwauwau) steht für das Wort foobar oder das Wort schnabbeldiwauwau

Beispiel: ([gG]roß|[kK]lein)+ - Eine beliebige Folge der Worte Groß und Klein jeweils mit großem oder kleinem Anfangsbuchstaben.