Files
silverbullet/IT/Cheatsheet.md
2026-02-05 13:26:29 +00:00

4.4 KiB

💻 CLI Cheatsheet: Git, Linux & Neovim

Eine zentrale Referenz für Befehle, Shortcuts und Workflows.


🐙 Git (Version Control)

Merkregel: Git speichert Snapshots, nicht nur Deltas. Working Dir (Lokal) -> Staging Area (Vorbereitung) -> Repository(Commit).

🔄 Basis-Workflow

Befehl Beschreibung
git status Zeigt den aktuellen Zustand (geänderte/neue Dateien).
git add . Fügt alle Änderungen zur Staging-Area hinzu.
git add -p Interaktives Staging (Hunks einzeln auswählen).
git commit -m "msg" Erstellt einen Snapshot (Commit) mit Nachricht.
git push Synchronisiert lokale Commits zum Remote-Server.
git pull Holt Änderungen vom Server und merged sie.

↩️ Undo & Rettungsanker

Befehl Beschreibung
git checkout . Gefährlich: Verwirft alle lokalen Änderungen an Dateien.
git reset --soft HEAD~1 Macht den letzten Commit rückgängig, behält Änderungen aber im Staging.
git commit --amend Fügt Änderungen zum letzten Commit hinzu (History Rewrite!).
git stash Verschiebt Änderungen temporär auf einen Stack (Arbeitsverzeichnis sauber).
git stash pop Holt Änderungen vom Stack zurück.
git log --oneline --graph Zeigt den Commit-Baum visuell an.

git reset --hard HEAD~1 Löscht den letzten Commit und alle darin enthaltenen Änderungen unwiderruflich. Reset auf den Zustand davor.


🐧 Linux / Bash (Shell)

📂 Datei- & Ordner-Operationen

Befehl Beschreibung
ls -lah Listet alles (all), ausführlich (long), menschenlesbar (human).
cp -r src dest Kopiert Ordner rekursiv (-r).
rsync -av src/ dest/ Synchronisiert Ordner (besser als cp, behält Rechte/Zeitstempel).
mkdir -p a/b/c Erstellt ganze Ordner-Pfade (parents).
du -sh folder Zeigt die Speicherbelegung eines Ordners (disk usage).
chmod +x file.sh Macht eine Datei ausführbar (executable).

🔍 Suchen & Filtern (Grep & Find)

Befehl Beschreibung
grep -r "Text" . Sucht "Text" rekursiv im aktuellen Verzeichnis.
grep -Fw "IP" file Sucht nach fixem String (-F) und ganzem Wort (-w).
find . -name "*.conf" Sucht Dateien anhand des Namens.
find . -size +100M Findet Dateien größer als 100 MB.
`history grep "befehl"`

⚙️ System & Prozesse

Befehl Beschreibung
htop / btop Interaktiver Prozess-Manager (CPU/RAM).
`ps aux grep [app]`
kill -9 [PID] Beendet Prozess hart (SIGKILL).
systemctl status [dienst] Prüft Status eines Service (z.B. docker, sshd).
journalctl -xe Zeigt System-Logs (bei Fehlern).

Neovim (NVIM)

Modi: ESC = Normal (Bewegen), i = Insert (Schreiben), v = Visual (Markieren).

🏃 Navigation (Muscle Memory)

Taste Bewegung
h j k l Links, Runter, Hoch, Rechts.
w / b Wort vorwärts / Wort rückwärts.
0 / $ Zeilenanfang / Zeilenende.
gg / G Dateianfang / Dateiende.
Ctrl + u / d Seite hoch / Seite runter (Up/Down).
/suchbegriff Suche (n = weiter, N = zurück).

✏️ Editieren (Normal Mode)

Taste Aktion
u / Ctrl + r Undo / Redo.
dd Zeile ausschneiden (löschen).
yy Zeile kopieren (yank).
p Einfügen (paste) nach Cursor.
ciw "Change Inner Word" (Löscht Wort unter Cursor & wechselt zu Insert).
A Springt ans Zeilenende & wechselt zu Insert (Append).
o Neue Zeile unterhalb einfügen & Insert.

💾 Ex-Kommandos (:)

Befehl Aktion
:w Speichern.
:q! Schließen ohne Speichern (Force).
:wq Speichern & Schließen.
:%s/old/new/g Suchen & Ersetzen in ganzer Datei.
:vsp file Vertikaler Split (Fensterteilung).

🔐 SSH & Netzwerk

Befehl Beschreibung
ssh user@ip Verbindet zum Server.
ssh -p 2222 user@ip Verbindet auf spezifischem Port.
ssh-copy-id user@ip Kopiert den Public Key auf den Server (Passwortloses Login).
ip a Zeigt eigene IP-Adressen und Interfaces.
ss -tulpn Zeigt offene Ports und lauschende Dienste (Sockets).