ubuntuusers.de

howdoi

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

howdoi (gesprochen: "How do I", auf deutsch: "Wie mache ich") ist eine in Python geschrieben Kommandozeilenapplikation, mit der sich schnell Lösungen zu (einfachen) Programmierproblemen recherchieren lassen.

Dazu übergibt man howdoi die gewünschten Suchbegriffe, dann wird damit im Hintergrund eine Google-Suche bei Stackoverflow 🇬🇧 gemacht und das Ergebnis ausgeben. Wo und wie gesucht wird kann aber auch über Umgebungsvariablen beeinflusst werden.

howdoi arbeitet rein auf der Kommandozeile, es wird also keine graphische Umgebung oder ein Browser vorausgesetzt. Aber natürlich ist eine Internetverbindung notwendig.

Installation

aus den Paketquellen

Das Paket ist seit Ubuntu 17.04 in den Paketquellen.

Paketliste zum Kopieren:

sudo apt-get install howdoi 

Oder mit apturl installieren, Link: apt://howdoi

über pip

Wer die neueste Version installieren möchte, kann das Programm über den Python-Paketmanager pip installieren:

Hinweis!

Fremdsoftware kann das System gefährden.

pip3 install --user howdoi       # Programm wird nur für den aktuellen Nutzer installiert  

Nutzung

Die allgemeine Syntax von howdoi lautet:

howdoi [OPTIONEN] SUCHBEGRIFFE 

SUCHBEGRIFFE sind dabei die Begriffe, die das Problem beschreiben, nach dem man Suchen möchte. Idealerweise sind die Suchbegriffe auf Englisch. Im folgenden Beispiel wird danach gesucht, wie man in der Bash prüft, ob eine Datei existiert:

howdoi test if file exists bash 

Ergebnis:

#!/bin/bash if [ -e x.txt ] then echo "ok" else echo "nok" fi

Im zweiten Beispiel wird danach gesucht, wie man in Ruby einen String formatiert:

howdoi format string ruby 

Ergebnis:

name1 = "John" name2 = "Mary" "hello, #{name1}. Where is #{name2}?"

Standardmäßig gibt howdoi genau ein Suchergebnis aus. Unpraktisch ist, dass das Programm bei mehrzeiligen Lösungen keine Zeilenumbrüche darstellt, wodurch die Ausgabe schlechter lesbar ist.

Optionen

Die Ausgabe von howdoi kann über die folgenden Optionen beeinflusst werden:

Optionen von howdoi
Option Erklärung
-a, --all Gibt nicht nur den Befehl / Code aus, sondern den ganzen Text der Antwort.
-l, --link Gibt als Ergebnis nur den Link auf den Diskussionsthread zurück, in dem die Antwort enthalten ist.
-p N, --pos N Gibt als Ergebnis den N-ten Suchtreffer zurück. Voreinstellung für N ist 1
-n ANZAHL Gibt ANZAHL Ergebnise zurück. Voreinstellung für ANZAHL ist 1.
-c Die Ausgabe des Ergebnisses ist farbig / mit Syntaxhervorhebung
-C, --clear-cache Löscht den internen Suchcache von howdoi

Umgebungsvariablen für howdoi setzen

Das Suchverhalten von howdoi kann über einige Umgebungsvariable beeinflusst werden. So würde z.B.

export HOWDOI_URL=askubuntu.com 

die Suche standardmäßig bei askubuntu.com durchführen

Umgebungsvariablen von howdoi
Variable Erklärung
HOWDOI_URL URL, bei der howdoi sucht. Voreingestellt ist stackoverflow.com, als Werte können die URLs der auf stackexchange.com 🇬🇧 aufgeführten Webseiten angegeben werden
HOWDOI_SEARCH_ENGINE Suchmaschine, welche von howdoi genutzt wird. Voreingestellt ist Google, die anderen Option ist Bing.
HOWDOI_COLORIZE Wird die Variable auf true gesetzt, erscheint die Ausgabe immer farbig (auch ohne Angabe der Option -c).
HOWDOI_DISABLE_CACHE Wird die Variable auf true gesetzt, wird das Caching von howdoi deaktiviert.

Cache manuell löschen

howdoi legt standardmäßig einen Cache an, in dem Suchergebnisse gespeichert werden. Stellt man die gleiche Anfrage erneut, erhält man das Ergebnis aus dem Cache, was schneller ist, weil keine Webabfrage nötig ist.

Das Programm verwendet eine SQLite Datenbank, welche jeweils im Homeverzeichnis des Nutzers unter .cache/howdoi liegt. Löscht man die Datei, ist auch der Cache gelöscht. Alternativ kann man den Cache auch über die oben genannte Option -C löschen.

Diese Revision wurde am 26. Juni 2018 22:50 von BillMaier erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Programmierung, Shell