
Beschreibung
Das Terminal ist eines der leistungsstärksten "Tools" von Mac OS X. Es ermöglicht den Zugriff auf den Unix-Unterbau. Das Terminal ist nichts anderes als ein Eingabefenster, in dem sich Unix-Befehle ausführen lassen („Kommandozeile“).
Innerhalb des Terminals läuft die sogenannte Shell, von der es mehrere Typen gibt. Eine Shell kann als Eingabeumgebung oder Kommandozeileninterpreter bezeichnet werden, die je nach ihrer Art verschieden mächtig ist. Bis Mac OS X 10.2 wurde standardmäßig tcsh verwendet und dann mit Version 10.3 zur bash (Bourne again shell) gewechselt. Durch Eingabe des Befehls tcsh
wechselt man die Shell. In Tiger sind die bash (die Standard-Shell), tcsh, csh, zsh und die Korn-Shell (ksh) enthalten. Daneben gibt es noch unzählige andere Shell-Varianten.
Terminal, ein Begriff aus alten UNIX-Zeiten
Der Begriff und auch die Grundfunktionsweisen eines Terminals kommen aus der Zeit der ersten Unix-Großrechner. Diese Riesenschränke verfügten nämlich als einzige über ein Betriebssystem, Kernel, Festplatte etc. Alle an diesen Zentral-Rechner angeschlossenen Anwender arbeiteten mit einer Hardware, die Terminal genannt wurde und die im einfachen Sinne aus einer Tastatur und einem Bildschirmbestanden. Somit ist das heutige Terminal eher eine Terminal-Emulation.
Beim Start des Terminals fällt einem evtl. die Zeichenfolge ttyp1 auf. tty steht für Teletypewriter und erinnert an die Schreibmaschinen, die als Computerterminals benutzt wurden, bevor "visuelle" Terminals mit einem Bildschirm zur Verfügung standen. Mit ttyp1 wird die entsprechende Terminal-Schnittstelle bezeichnet.
Terminalbefehle
Befehl | Manual | Kurzbeschreibung |
---|---|---|
afplay, afinfo und afconvert | Spielen Musikformate ab, zeigen Informationen an und konvertieren Audiofiles, ab Mac OS X 10.5 | |
airport | WLAN Client hat u.a. Scanmodus /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport | |
alias src="dst -fl" | setzt einen Alias von src nach dst mit gegebenen Flags fl. z.B. alias ll="ls -lh" | |
apple80211 | WLAN Konfiguration im Terminal /System/Library/Frameworks/Kernel.framework/Versions/A/Headers/IOKit/apple80211 | |
AppleJack | Repariert Rechte, Festplatten und räumt aus dem Single User Mode heraus auf. Jedenfalls nach der optionalen Installation dieser Software. | |
apple80211 | WLAN Konfiguration im Terminal | |
cal | Zeigt den Calender an | |
cat <datei> | Gibt <datei> aus. | |
cd <Verzeichnisname> | Wechselt in ein Verzeichnis tiefer | |
cd .. | Wechselt in ein höheres Verzeichnis | |
cd / | Wechselt in die oberste Ebene der Festplatte, das sogenannte Root- oder Wurzelverzeichnis (nicht zu verwechseln mit dem Benutzerverzeichnis des ebenfalls "Root" genannten Superusers von MacOSX | |
cd ~ | Wechselt in das eigene Benutzerverzeichnis | |
cd | ohne Parameter wechselt in das eigene Benutzerverzeichnis | |
changeip | Ändert IP Adresse und alle relevanten Konfigurationen auf einem MacOSXServer | |
chmod | Legt Rechte bzw. Dateiberechtigungen fest | |
clear | Löscht den Terminalinhalt, Shortcut CTRL-L (^L) | |
date | Zeigt das Datum an | |
find | Suchen von Dateien nach div. Kriterien | |
fs_usage | Zeigt Aktivität und Zugriffe auf das Dateisystem (für diesen Befehl muss man als ROOT User eingeloggt sein) | |
ftp | FTP Client -> FTP Clients -> FTP Befehle | |
grep | Durchsucht die Eingabe nach einem Suchausdruck und gibt gefundene Zeilen zurück | |
ifconfig | Ausgabe und Setzen von Netzwerkparametern | |
installer | .pkg Dateien installieren | |
hdiutil | Werkzeuge zum Bearbeiten von Diskimages (dmg) Dateien | |
hwprefs | Ausgabe und Setzen von Prozessorparametern | |
kickstart | starten von AppleRemoteDesktop /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart | |
kill <ID> | Stoppt den Prozess ID. Die ID läßt sich z.B. mittels top ermitteln | |
killall <name> | Stoppt den Prozess name. Anders als bei kill, wird der Name des Programms verwendent | |
locate | Sucht nach Dateien ähnlich Spotlight | |
ls | Zeigt den Inhalt des Verzeichnisses an in dem man sich gerade befindet | |
lsof | Zeigt alle geöffneten Dateien an (list open files); z.B. "lsof | grep Finder" für alle vom Finder geöffneten Dateien | |
machine | Ausgabe des CPU Typ | |
md5 | Überprüfen md5 Prüfsumme | |
md5sum | Überprüfen md5 Prüfsumme | |
man <Befehl> | Zeigt eine ausführliche Hilfe zum gesuchten Befehl an z.B. man ls | |
pdisk | Zeigt Inormationen zu den einzelnen Festplatten bzw. Partitionen an | |
pico <datei> | Startet einen kleinen Textbasierten Editor | |
pmset | pmset | Ausgabe und Setzen von Energiesparparametern |
rm <dateiname> | Löscht eine Datei, Datei läßt sich aus Finder direkt ins Terminal ziehen | |
reboot | Neustart des Rechners | |
ssh username@host.de | Öffnet eine weitere Terminal Verbindung zu einem entfernten Computer | |
su | Wechselt dauerhaft den Benutzer zu root, dem superuser. Siehe auch sudo | |
su user | Wechselt dauerhaft den Benutzer zu user ohne sein Shell-Environment zu laden | |
su - user | Wechselt dauerhaft den Benutzer zu user | |
sudo <Befehl> | Führt einen Befehl als root aus. Es muss das admin Passwort eingeben werden. Achtung! man sieht bei der Eingabe des Passwortes keine Sternchen oder Ähnliches. | |
textutil | Textmanipulation und Konvertierung durch das Cocoa Textsystem | |
tidy | Aufräumen und Korrektur von X/HTML und XML Dateien | |
top | Informationen über laufende Prozesse, Speicherbedarf, CPU Last, Cache | |
uptime | Zeit seit dem letzten Rechnerstart, Anzahl der Nutzerprozesse und mittlere Rechnerlast | |
vi <datei> | Startet einen kleinen Textbasierten Editor | |
w | Zeigt Übersicht und Aktivität der eingelogten Nutzer | |
which <Terminalprogramm> | Zeigt den Pfadnamen zum angegebenen Terminalprogramm | |
where <Terminalprogramm> | Zeigt alle bekannten Pfadnamen zum angegebenen Terminalprogramm in Suchreihenfolge an, allerdings nur in der ZSH verfügbar |
Im Allgemeinen lassen sich Befehle mittels ctrl C abbrechen, manche Befehle auch mit Q. Früher ausgeführte Befehle lassen sich mit ⇡ und ⇣ wieder aufrufen.
Programme
vi
vi bzw. vim ist der auf jedem Unix-System vorhandene Editor. Für Mac-User wenig verständlich heißt vi „Visual Interface“ und bezieht sich daraus, dass man die Änderungen auch sieht – im Gegensatz zu den frühesten Editoren, wo man die Zeilen und Spalten mit Koordinaten anvisieren und dort die Änderungen blind durchführen musste. Einen guten Einstieg in vim bekommt man im Terminal durch die Eingabe von vimtutor
.
vi unterscheidet drei Modi:
- Den Eingabemodus (insert),
- den Kommandozeilenmodus (append) und den
- Befehlsmodus.
Der Befehlsmodus ist immer als Standard aktiviert. Durch Drücken von : wird der Kommandozeilenmodus gestartet. Durch drücken von I, A oder O gelangt man in den Eingabemodus und kann dort Text eingeben. Mit esc gelangt man immer zurück in den Befehlsmodus.
Für Leute, denen das zu kompliziert ist, gibt es mit Vigor einen vi mit einem Büroklammerassistenten. :-)
Wichtige Tastenkürzen im Befehlsmodus
- um eine Buchstaben zu löschen drückt man X
- um zum Beispiel fünf Buchstaben zu löschen drückt man 5 + X
- um eine Zeile zu löschen drückt man D
- um fünf Zeilen zu löschen drückt man 5 + D
Wichtige Tastenkürzen im Kommandozeilenmodus
- um die Datei zu speichern schreibt man
:w
- um die Datei zu speichern und gleich vi zu verlassen schreibt man
:x
- wenn man vi verlassen will, aber die Datei nicht speichern will, schreibt man
:q!
Beispielnutzung
Was vi attraktiv macht ist, dass man mit wenigen Tastaturbefehlen schnell Änderungen vollziehen kann. Um zum Beispiel in einer geöffneten Datei die Zeichenkette „abc“ durch „def“ zu ersetzen wechselt man in den Kommandozeilenmodus und gibt dann s/abc/def/g
ein.
Verweise
pico und nano
Wer gerne am unteren Bildschirmrand ein Menü der möglichen Kommandos sieht ist bei pico bzw. nano richtig. Wichtig ist, das „^“ für die Taste ctrl steht.
Emacs
Ein ordentliches Betriebsystem, nebenbei noch ein ziemlich komplizierter Editor. ;-)
- ctrl X + ctrl C beendet das Gespenst.
- esc + X +
doctor
startet „Eliza“, mit dem man sich dann „gut“ unterhalten kann.
Terminal-Alternativen
Viele Profinutzern wünschen sich flexiblere bzw. komplexere Lösungen für die Kommandozeile. Als vollständigen Ersatz für das Terminal verstehen sich: iTerm, GLterm und Terminator.
Eine Erweiterung für das Terminal ist Visor, welches via Shortcut ein Terminaloverlay am oberen Bildschirmrand einblendet.
Verweise
- Audio im Terminal (engl.)
- Einführung in das Terminal bei O'Reilly: Teil 1, Teil 2 (engl.)
- Offizielle Bash-Homepage
Kurios
- Gibt man, während man online, ist
telnet towel.blinkenlights.nl
im Terminal ein, kann man sich Star Wars IV anschauen. - Wenn schon ein Terminal, warum dann nicht eine perfekte Simulation eines 70er-Jahre Terminals mit glterminal?
- Kategorien
- Apple, Leopard, Betriebssystem, Dienstprogramme, Systemprogramme, Terminal