Join the Shell Users' Revolutionary Front Rage Against the Web
Das schöne an Linux ist ja, dass es immer wieder etwas Neues zu entdecken gibt. Oft stellt man dabei auch noch fest, dass es für eine bestimmte Aufgabe - wie etwa die Suche im Web - noch einen kürzeren, eleganteren und vor allem schnelleren Weg gibt. So z.B. mit Surfraw (Shell Users Front Rage Against the Web), das über die Shell aufgerufen, die query-url für eine ganze Reihe an Webseiten und Suchmaschinen zusammenbaut und das ganze dann im Browser aufruft. Klingt erst einmal wenig spektakulär, aber genau darin liegt die Magie :-) Da ich eh immer ein Terminalfenster offen habe, ist das wesentlich schneller als erst zum Browser zu wechseln, dort die Website einzugeben und dann die Suchfunktion zu bemühen.
Eine einfache Suche über surfraw bei duckduckgo sieht bspw. so aus:
$: sr duckduckgo Battle of Hoth
Surfraw bringt von Haus aus eine ganze Reihe an unterstützten Webseiten (elvis) genannt mit. Eine einfache Liste dieser Elvis kann man über
$: sr -elvi
aufrufen oder einfach im Verzeichnis /usr/lib/surfraw nachsehen. Ich
benutze z.B. folgende Elvis ziemlich regelmäßig:
- debpkghome -- Website der Originalsoftware in einem Debianpaket
- archwiki -- Archlinux Wiki
- duckduckgo -- nette Suchmaschine
- youtube -- videos direkt suchen
- google -- gute Ergebnisse, aber evil :-)
- wayback -- internet archive wayback machine
- wikipedia -- enzyklopädie
- leodict -- Dictionary
Jedes Elvi bietet zudem noch einige Optionen, mit der man die Suche entweder präzisieren kann oder aber das Verhalten der aufgerufenen Website zu steuern. Dabei listet
$: sr elvi -local-help
die für das elvi verfügbaren Optionen auf. Im Falle von duckduckgo wäre das bspw.:
$: sr duckduckgo -local-help
Usage: duckduckgo [options] [search words]...
Description:
Surfraw search the web using DuckDuckGo (www.duckduckgo.com)
Local options:
-d,-ducky,-l,-lucky use in case of overwhelming feeling of duckiness
-j,-javascript use javascript
-safe enable safe search
-r,-redirect use redirection
-s,-insecure disable SSL search
eigene Bookmarks, eigene elvis
Neben den bereits vorhandenen elvis bietet surfraw zudem die Möglichkeit
bookmarks zu setzen. Will man bspw. die Pronom-Datenbank der National
Archives nach einer bestimmten PUID (= Pronom unique identifier) suchen,
kann man das bequem über ein Bookmark machen. Dazu erstellt man die
Datei ~/.config/surfraw/bookmarks und trägt dort Folgendes ein:
puid http://www.nationalarchives.gov.uk/PRONOM/%s
Nun kann man über
$: sr puid fmt/44
oder
$: sr puid x-fmt/20
direkt den jeweiligen Eintrag in der Pronomdatenbank aufrufen. Alternativ kann man übrigens auch den entsprechenden Bang von duckduckgo nutzen (think of the possibilities :-) ):
$: sr duckduckgo \!puid fmt/44
Wichtig ist hierbei das Ausrufezeichen zu escapen, damit es nicht von der Shell interpretiert wird.
Alternativ kann man auch direkt loslegen und ein eigenes elvi erstellen. Wie das geht, ist im offiziellen Surfraw Hacking Guide beschrieben. Die einfachste Methode ist sich ein existierendes elvi, das am besten zu der gewünschten Website passt, zu nehmen und und es einfach entsprechend anzupassen.