Shell Befehle unter OS-X

Zuletzt aktualisiert am 17. Januar 2024 5 Minuten

Wichtige Shellbefehle für OS-X und Linux. Nicht alle Befehle sind in OX-X vorhanden, oder sie unterscheiden sich zum Teil in der Verwendung. Ich überprüfe mit der Zeit welche auf OS-X funktionieren, und wie…

Die Bash Shell wurde durch die Zsh Shellexternal link ersetzt.

Beispiele

Einige Anwendungsbeispiele aus der Praxis:

Löschen von sich wiederholenden Dateien in OS X

Betriebssysteme oder Programme legen häufig kleine Dateien in den Verzeichnissen ab, die bei der Verwaltung der Inhalte helfen. In OS-X ist da zum Beispiel die Datei .DS_Store, und in Windows Thumbs.db. Diese Dateien sind normalerweise versteckt, tauchen aber auf, wenn mehrere Betriebssysteme denselben Speicherplatz nutzen - bei externen USB Festplatten zum Beispiel. So wird man diese Dateien los:

sudo find /Volumes/Drobo-02/MEDIA_LIB -name ".DS_Store" -delete

Man kann auch Wildcardsexternal link verwenden, um Dateien nach bestimmten Mustern auszuwählen. Hier zum Beispiel alle Dateien die mit .lockfile enden. Hier wird das Root-Verzeichnis und alle Unterverzeichnisse durchsucht:

sudo find / -name "*.lockfile" -delete

Der Parameter -delete sorgt dafür das die gefundenen Dateien sofort gelöscht werden. Wenn man ihn weg lässt zeigt der find Befehl nur seine Suchergebnisse an, in diesem Fall die Dateipfade zu den gefundenen Dateien. So kann man die Suche erst überprüfen, um sicherzustellen, dass die richtigen Dateien betroffen sind, bevor man den Befehl erneut mit -delete ausführt.

Shell Befehle

Datei & Verzeichnis

BefehlBeschreibung
lsAuflistung von Verzeichnissen (Inhalt eines Verzeichnis anzeigen)
cdVerzeichnis wechseln
cpEine Datei oder Verzeichnis kopieren
mvEine Datei verschieben oder umbenennen
chmodZugriffsrechte einer Datei oder eines Verzeichnisses ändern
chownEigentümer und Gruppe einer Datei oder Verzeichnisses ändern
ddDaten blockweise kopieren klonen, löschen, Images erstellen, uvm…
diffVergleich des Inhalts zweier Dateien Zeile für Zeile
dfFreien Festplatten-Speicher und inodes aller eingehängten Laufwerke anzeigen
duSpeicherverbrauch eines Verzeichnisses anzeigen
grepDateien durchsuchen
lsofAnzeige geöffneter Dateien
mountDateisystem einhängen
pwdZeigt das aktuelle Arbeitsverzeichnis an
umountDateisystem aushängen
mkdirEin Verzeichnis / Ordner erstellen
rmDateien und Verzeichnisse löschen
rmdirEin Verzeichnis löschen
rsyncDatensynchronisation / Datenübertragung Lokal oder Remote
ftpFTP starten
sftpSFTP starten
scpSicheres übertragen von Daten
shredSicheres löschen von Daten

Datei suchen

BefehlBeschreibung
findDateien nach Datum, Größe, Anderung, Name und Muster suchen.
grepText innerhalb einer Datei oder ausgabe suchen
locateSchnelles suchen von Dateien mittels locatedb Datenbank
whereisSuchen von Programmen in vordefinierten Verzeichnissen
whichLokalisiert ein Programm welches sich im PATH befindet

Datei packen & entpacken

BefehlBeschreibung
bunzip2Dekomprimert bz2 Dateien
bzip2Komprimiert Dateien im bz2 Format
compressKomprimiert Dateien
gunzipDekomprimert gz Dateien
gzipKomprimiert Dateien im gz Format
tarErstellen von Tar Archiven
uncompressDekomprimiert Dateien
unzipDekomprimiert Zip Dateien
zipKomprimiert Dateien im Zip Format

System

BefehlBeschreibung
freeAuslastung des Arbeitsspeichers anzeigen
uptimeZeigt an wie lange das System läuft
dateZeigt das System Datum und die System Zeit an
psZeigt den Status eines Prozesses
pstreeZeigt alle Prozesse in einer Baum Ansicht an
unameSysteminformationen anzeigen
topZeigt die auf dem System laufenden Prozesse „live“ an
killEinen Prozess sofort beenden
killallMehrere Prozesse mit einem bestimmten Namen beenden
clearDen Bildschirm der Konsole leeren
manSystemhandbuch (manual oder manpage) zu einem Befehl, Anwendung oder Datei (manual)
rebootDas System neutstarten
shutdownDas System Herunterfahren
wallAllen verbundenen Benutzern eine Nachricht senden
whichEin Kommando lokalisieren (Pfad zum Kommando anzeigen)

Benutzer & Gruppen verwalten

BefehlBeschreibung
chfnInformationen eine Users bearbeiten
idAnzeige der Benutzer ID und Gruppen ID (Kennung)
lastDie letzten logins nach Datum und Uhrzeit anzeigen
loginBenutzer (neu)anmelden
whoDie aktuell auf dem System eingeloggten User anzeigen
whoamiAnzeige des Benutzer mit dem gerade gearbeitet wird
passwdPasswort einen Benutzers ändern
suAls Admin anmelden, oder SU + Benutzername den Benutzer wechseln
sudoEinen Befehl als admin ausführen
useraddEinen Benutzer anlegen
userdelEinen Benutzer löschen
usermodEinen Benutzer ändern
groupaddEine Benutzergruppe anlegen
groupdelEine Benutzergruppe löschen
groupmodEine Benutzergruppe ändern

Netzwerk

BefehlBeschreibung
pingDatenpakete an eine IP senden (zum Prüfen der Verbindung)
tracerouteEin Datenpaket verfolgen
netstatListet alle aktuellen benutzten Ports auf
nslookupNamensauflösung
digDNS lookup Werkzeug
ifconfigStatus und Konfiguration der Netzwerkschnittstelle

Hardware

BefehlBeschreibung
lscpuCPU Informationen anzeigen
lshwHardware Informationen anzeigen
lspciPCI-Hardware Informationen anzeigen
lsusbUSB Hardware Informationen anzeigen

Sonstige

BefehlBeschreibung
tarKomprimieren und Dekomprimieren von Dateien
zipKomprimieren von Zip Archiven
unzipDekomprimieren von Zip Archiven
headAusgabe der ersten Zeilen einer Datei
tailAusgabe der letzten Zeilen einer Datei
lessScrollfähige Anzeige einer Textdatei
xargsStandardeingabe in Befehlszeilen umzuwandeln
wgetDateien aus dem Web herunterladen, unterstüzt HTTP, HTTPS und FTP
curlDateien von oder zu einem Server übertragen
sshSichere Verbindung zu einem anderen System herstellen
calRuft einen einfachen Kalender auf

Bash Shortcuts

ShortcutBeschreibung
Ctrl + aGehe zum Anfang der Kommandozeile
Ctrl + eGehe zum Ende der Kommandozeile
Ctrl + kLösche vom Cursor bis zum ende der Kommandozeile
Ctrl + uLösche vom Cursor bis zum Anfang der Kommandozeile
Ctrl + wLösche vom Cursor zum Anfang des Wortes (das aktuelle Wort löschen)
Ctrl + yFüge ein gelöschtes wort wieder ein, welches mit einem der shortcuts zum löschen gelöscht wurde
Ctrl + xxBewege dich zwischen Anfang der Kommandozeile und der aktuellen position des Cursor (hin und zurück)
Ctrl + fEin Zeichen nach vorne
Ctrl + bEin Zeichen zurück
Ctrl + dLöscht das Zeichen unter dem Cursor
Ctrl + hLöscht das Zeichen vor dem Cursor
Ctrl + rDurchsucht die History rückwärts
Ctrl + gDen History Suchmodus wieder verlassen
Ctrl + pLetztes Kommando aus der History (Rückwärts durch die History gehen)
Ctrl + nNächstes Kommando aus der History (Vorwärts durch die History gehen)
Ctrl + lLösche das Kommandozeilenfenster
Ctrl + sStoppt den Output auf die Kommandozeile (Bei langen Kommandos mit viel Output)
Ctrl + qStellt denn Output in die Kommandozeile wieder her (welcher vorher mit „Ctl + s“ gestoppt wurde)
Ctrl + cAktuell laufendes Kommando abbrechen
Ctrl + zAktuelles Kommando stoppen