Krank. Einfach krank. Daß einige Leute darauf stehen, den Traffic in ihrem Netz mitzusniffen ist eine Sache. Das dann aber mittels Packetmozart auf die Soundkarte zu geben ist krank. Oder?

Für den Test in einem großen Netz empfehle ich ‚packetmozart -t 100‘, ansonsten dauert das gedudel zu lange. Wenn nicht viel los ist könnte ein Aufruf ohne Parameter die SSH-Session zum klingen bringen. :-)

Dank an Jürgen für den Link auf fh.

Ich bin mir nicht sicher, ob ich das wirklich begrüßenswert finde. Cool ist die Idee aber auf jeden Fall, die ich im amaroK Blog gefunden habe (auch wenn es dort um was ganz anderes geht):

wget klik.atekon.de/client/install -O -|sh

Disclaimer: Man sollte das nicht ausführen wenn man kein Interesse an einer aktuellen Beta von Amarok hat.

Eigentlich trivial, aber doch eine originelle Idee: Mit wget wird ein Shell-Skript aus dem Netz gezogen, durch -O - wird es nicht in eine Datei gespeichert sondern stattdessen auf der Standardausgabe ausgegeben. Diese Ausgabe wandert mittels der Pipe in eine Shell und wird dort ausgeführt.

Krank und wahrscheinlich nicht ungefährlich. Aber nett anzusehen… ;-)

Spätestens seitdem ich die Vorzüge von screen kenne und ausgiebig benutze vermisse ich die Möglichkeit, mittels der Home- und der End-Taste in meiner Kommandozeile herumzuspringen. Bis dahin hatte ich mich mit Ctrl+A beholfen, aber dieser Taste kommt unter screen ja eine besondere Bedeutung zu.

Einem Tip von StrCat folgend habe ich meiner ~/.zshrc folgendes hinzugefügt, um die Home- und die End-Tasten wieder gefügig zu machen:

# Tastenbelegung fuer Sondertasten (Home, End, ...) anpassen
autoload -U zkbd
[[ ! -f ~/.zkbd/$TERM-$VENDOR-$OSTYPE ]] && zkbd
source ~/.zkbd/$TERM-$VENDOR-$OSTYPE
[[ -n ${key[Home]} ]] && bindkey "${key[Home]}" beginning-of-line
[[ -n ${key[End]} ]] && bindkey "${key[End]}" end-of-line

Zunächst führt diese Änderung dazu, daß bei jedem ersten Start eines neuen Terminals (also der Konsole, einem screen in der Konsole, einem Xterm, einem screen im Xterm…) ein Programm startet das einen um einige Tastendrücke bittet. Die eingelesenen Zeichen werden in Konfigurationsdateien unter ~/.zkbd gespeichert, so daß sie bei jedem Folgenden Start zur Verfügung stehen. Mittels dieser Informationen und bindkey werden dann automatisch die Home- und die End-Tasten belegt. Das funktioniert natürlich auch mit allen anderen Sondertasten, aber mir fehlten erstmal nur diese beiden.

Ich muß zugeben tief beeindruckt zu sein was man alles in JavaScript machen kann… Hmm… Ich fange noch mal an: Es gibt ja eine ganze Reihe Implementierungen von Unixoiden Betriebssystemen. *BSD, Solaris, Linux und so weiter. Üblicherweise werden die aber in C, Assembler oder anderen möglichst performanten Sprachen geschrieben. JS/UIX ist anders:

JS/UIX is an UN*X-like OS for standard web-browsers, written entirely in JavaScript (no plug-ins used). It comprises a virtual machine, shell, virtual file-system, process-management, and brings its own terminal with screen- and keyboard-mapping.

Und ich kann nur jedem empfehlen, den Tip von Dawi (von dem ich auch den Hinweis auf das Projekt habe) zu beachten: Einfach mal den vi starten und benutzen!

Ich habe mich auch im Anfang schwer getan mich von meiner heimeligen Bash zu trennen, aber jetzt nach ein paar Wochen kann ich sagen daß ich den Umstieg nicht bereue: Ich benutze jetzt die Z-Shell, oder kurz: die zsh.

Auf die Idee bin ich gekommen nachdem ich bei der letzten Server-Umrüstung einige Male von einer GRML-CD (übrigens auch einen Blick wert!) booten mußte. In GRML findet man sich per Default in einer zsh innerhalb einer screen-Session wieder. Alles ist prächtig vorkonfiguriert, und die Features die ich auf den ersten Blick sehen konnte haben mich neugierig gemacht.

Mein Tip zum Überzeugen:

zstyle ':completion:*' menu yes select

Mit einem solchen Eintrag in der Konfigurationsdatei bewirkt man, daß bei einer Completion (Druck auf die [TAB]-Taste, ähnlich wie in der Bash) die möglichen Einträge nicht nur aufgelistet werden, sondern quasi in einem Textmenü zur Auswahl stehen. Den gewünschten Eintrag sucht man sich mittels der Pfeiltasten aus. Die herkömmliche Completion (weitere Zeichen eintippen, nochmal auf [TAB] drücken, usw.) funktioniert natürlich nach wie vor.

Und damit nicht genug: in der zsh werden nicht nur Kommandos, Verzeichnis- und Dateinamen vervollständigt. Auch Hostnamen, Benutzernamen und (was ich gerade erst festgestellt habe — daher jetzt der enthusiastische Artikel :-) ) Parameter für Kommandos! Wenn man also die Dateien in seinem Verzeichnis der Größe nach aufgelistet haben will, einem aber natürlich der entsprechende Parameter entfallen ist, tippt man einfach

ls -[TAB]

Daraufhin werden alle Optionen von ls samt einer Kurzbeschreibung aufgelistet, natürlich kann man dann in der Liste interaktiv -S aussuchen.

Dankenswerter- und zufälligerweise hat ziemlich zeitgleich mit meinem aufflammenden Interesse an der zsh Frank Terbeck eine Artikelserie zu dem Thema in seinem Blog begonnen. Ich empfehle jedem Shell-Hacker die Lektüre, und ein paar Probestunden in der zsh. Danach kann dann ja immer noch jeder für sich entscheiden… :-)

@Frank, falls Du das hier liest: Als nächstes hätte ich gerne eine solche Einführung für screen… ;-)