Skip to content

Tip #20: Effektive Suche in der History

Jeder Shellnutzer wird die Tastenkombination Strg+R kennen. In der Standardkonfiguration sucht diese in der Liste aller eingegebenen Befehle nach der Kombination. Also beispielsweise könnte Strg+R und die Eingabe von ls folgendes ergeben:

jens@huehnersuppe:~/ > ls -lart /usr/share/doc/fr*
bck-i-search: ls_

In der zsh ab Version 4.3.9 kann man diese Suche auch mit Mustern ergänzen. Im Normalfall ist Strg+R an history-incremental-search-forward gebunden. Für die Suche nach Mustern musst du ein neues Keybinding anlegen oder das alte überschreiben:

jens@huehnersuppe:~/ > bindkey “^R” history-incremental-pattern-search-forward
jens@huehnersuppe:~/ > grep -ls -E foo /usr/src/linux/kernel.java
bck-i-search: ls*kerne_

Im obigen Beispiel wurde das alte Keybinding überschrieben und dann nach einem Ausdruck gesucht, der ls gefolgt von kerne enthält. Das Feature wird mir sicher viel Spass bereiten. ;-)

Ausarbeitung zum AES-Vortrag

Ich hatte meine Vortragsunterlagen zu einem Seminarvortrag kürzlich verbloggt. Mittlerweile ist auch die dazugehörige Ausarbeitung fertig. Die 257 kB große PDF-Datei behandelt den AES-Algorithmus und Public-Key-Verfahren (RSA und Diffie-Hellman-Schlüsseltausch). Vielleicht ist es für den einen oder anderen von Nutzen.

Tip #19: Wo bin ich?

Falls ihr mal wieder die Orientierung verloren habt, so hilft euch folgende zsh-Funktion:

function whereami() {
  wget -q “http://maps.google.com/maps/geo?output=csv&oe=utf-8&ll=$1,$2” -O - | cut -f3- -d, 
}

Während des Verfassens des Blogeintrages befand ich mich also in, tipper, tipper, tipper whereami $(($RANDOM * 90/65535. )) $(($RANDOM * 180/65535. )), Amritsar, Punjab, India. :-)

In Anlehnung an Tip #872 Reverse geocode with bash.

Offener Brief an Google

Heute haben 38 Akademiker und Forscher einen offenen Brief (HTML-Version)an den CEO von Google, Eric Schmdit, geschrieben. So fordern auf sechs Seiten (plus zwei Seiten Fußnoten) die Standardnutzung von HTTPS und somit adäquate Sicherheit und den Schutz der Privatsphäre für die Nutzer.

Aus der Zusammenfassung:

Google already uses industry-standard Hypertext Transfer Protocol Secure (HTTPS) encryption technology to protect customers’ login information. However, encryption is not enabled by default to protect other information transmitted by users of Google Mail, Docs or Calendar. As a result, Google customers who compose email, documents, spreadsheets, presentations and calendar plans from a public connection (such as open wireless networks in coffee shops, libraries, and schools) face a very real risk of data theft and snooping, even by unsophisticated attackers. Tools to steal information are widely available on the Internet.

Google supports HTTPS encryption for the entire Gmail, Docs or Calendar session. However, this is disabled by default, and the configuration option controlling this security mechanism is not easy to discover. Few users know the risks they face when logging into Google’s Web applications from an unsecured network, and Google’s existing efforts are little help.

Support for HTTPS is built into every Web browser and is widely used in the finance and health industries to protect consumers’ sensitive information. Google even uses HTTPS encryption, enabled by default, to protect customers using Google Voice, Health, AdSense and Adwords. Google should now extend this degree of protection to users of Gmail, Docs and Calendar.

Rather than forcing its customers to “opt-in” to adequate security, Google should make security and privacy the default.

Tip #17: Lieblingseditor nutzen

Gestern abend organisierte unsere lokale LUG ein zsh-Gespräch. Dort sollten verschiedene interessante Einstellungen zur zsh besprochen werden. Jörg hatte einen besonders netten Tip:

EDITOR=${$(whence -p vim emacs jed xjed nano mcedit ed)[1]}

Der Befehl whence sucht im Pfad nach den angegebenen Programmen und legt die gefundenen in einem Array ab. Das erste Element des Arrays wird dann ausgewählt und als Variable EDITOR gespeichert. Wenn auf dem System kein vim installiert ist, würde emacs (sofern vorhanden) als Editor festgelegt werden. Sollte keiner der aufgeführten Editoren vorhanden sein, wird der ed genutzt. Denn dieser sollte immer installiert sein.

Wer es noch ein wenig weiter treiben will, setzt einen Alias: alias vim=$EDITOR. So kann man immer vim eingeben und bekommt den passenden Editor. Jedoch kann das Nebenwirkungen haben und du solltest gut überlegen, ob das der richtige Weg ist.

cronjob