Download your favorite Linux distribution at LQ ISO.
Go Back > Blogs > craigevil's random words of wisdom
User Name


Ramblings about Debian GNU/Linux
Rate this Entry

Surfraw - Shell Users' Revolutionary Front Rage Against the World Wide Web

Posted 06-30-2010 at 02:55 PM by craigevil

Are you tired of clicking the search box in Firefox to do searches or changing the search engine. Then surfraw is definitely for you. Get rid of the searchbox and use Surfraw.

Surfraw - Wikipedia, the free encyclopedia
Surfraw (Shell Users' Revolutionary Front Against the WWW) is a free POSIX-compliant (ie. meant for Linux, FreeBSD etc.) command-line shell program for interfacing with a number of web-based search engines. It is licensed under the GNU General Public License and written in the Bourne shell language.

It uses what it calls "elvi" (a tribute to Elvis); elvi are interface widgets for specific engines and databases such as Google, AltaVista, Wikipedia, Dejanews, Freshmeat, research index, Slashdot, ArXiv, and a number of others. It allows options for configuration of using a shell browser (lynx, w3m) or a graphical browser (firefox, mozilla, konqueror).

Surfraw - Shell Users' Revolutionary Front Rage Against the World Wide Web

Surfraw provides a fast unix command line interface to a variety of
popular WWW search engines and other artifacts of power. It reclaims
google, altavista, dejanews, freshmeat, research index, slashdot
and many others from the false-prophet, pox-infested heathen lands of
html-forms, placing these wonders where they belong, deep in unix
heartland, as god loving extensions to the shell.

Surfraw abstracts the browser away from input. Doing so lets it get
on with what it's good at. Browsing. Interpretation of linguistic
forms is handed back to the shell, which is what it, and human
beings are good at. Combined with incremental text browsers, such
as links, w3m (or even lynx), and screen(1), or netscape-remote
a Surfraw liberateur is capable of research speeds that leave
GUI tainted idolaters agape with fear and wonder.

Debian Binary Package

To install the version in your Debian distribution, as root, type:

apt-get install surfraw surfraw-extra
note the surfraw-extra package only has opensearch but it has a large dependency list.

Once install you simply type
sr google foo
to search Google.

Surfraw consists of a collection of elvi, each of which knows how to search a specific web site.

To see the list of elvi type:

surfraw -elvi
 $ sr -elvi
W		-- Activate Surfraw defined web-browser
acronym		-- Look for acronyms definitions (
alioth		-- Search Alioth (
altavista	-- Search the web using Altavista (
amazon		-- Search the bookstore
archpkg		-- Search Arch Linux packages (
arxiv		-- Search arXiv E-Print Archive for articles
ask		-- Question the web using Ask Jeeves (
aur		-- Search for PKGBUILDs
austlii		-- Search Australian Law docs (
bbcnews		-- Search BBC News (
bing		-- Search the web using Microsoft's Bing (
bookfinder 	-- Search for books using
bugmenot	-- Bypass compulsory web registration with
cddb		-- Search for cd track listings in CDDB (
cia		-- Search CIA documents at
cite		-- Search computer science papers (
cliki		-- Search the common lisp wiki
cnn		-- Search on CNN (
codesearch	-- Search source code using Google Code Search (
comlaw		-- Search Australian Law using Comlaw (
ctan		-- Search the Comprehensive TeX Archive Network (
currency	-- Convert currencies with the Universal Currency Converter (
cve		-- Search for CAN assignments in CVE
debbugs		-- Search the debian BTS (
debcontents	-- Search contents of debian/ubuntu packages (
deblists	-- Search debian mailing lists (
deblogs		-- Show changelogs for a package in Debian main (
debpackages	-- Search debian/ubuntu packages (
debpkghome	-- Visit the home page for a Debian package
debpts		-- Search the Debian Package Tracking System (
debsec		-- Search the Debian Security Tracker for CVE ids or package names
debvcsbrowse	-- Browse the VCS repository for a Debian package
debwiki		-- Search the Debian Wikis ( &
deja		-- Search usenet using Google Groups (
discogs		-- Search the Discogs database of music information (
dmoz		-- Search the Open Directory Project web directory (
duckduckgo	-- Search the web using Duckduckgo (
ebay		-- Search the Ebay auction site
etym		-- Look up word origins at
excite		-- Search on Excite (
fast		-- Search the web using FAST Search (
filesearching	-- Search files on filesearching (
finkpkg		-- Search Fink packages (
foldoc		-- The Free On-Line Dictionary Of Computing (
freebsd		-- Search FreeBSD related information (
freedb		-- Search for cd track listings in FreeDB (
freshmeat	-- Search Freshmeat (
fsfdir		-- Search the FSF/UNESCO Free Software Directory (
gcache		-- Search the web using Google cache (
genbugs		-- Search the Gentoo bug tracker (
genportage	-- Search for packages
google		-- Search the web using Google (
gutenberg	-- Search for books on Project Gutenberg (
happypenguin	-- Search the Linux Game Tome (
imdb		-- Search the Internet Movie Database (
ixquick		-- Search the web using ixquick [HTTPS] (
jamendo		-- Search Jamendo: free music with Creative Commons licenses (
javasun		-- Search Java API docs (
l1sp		-- Search lisp documentation
lastfm		-- Search
leodict		-- Search Leo's German <-> English dictionary (
lsm		-- Search the Linux Software Map
macports	-- Search macports packages (
mathworld	-- Search Wolfram MathWorld
mininova	-- Search the mininova bittorent source.
musicbrainz	-- Search MusicBrainz (
netbsd		-- Search NetBSD related information (
ntrs		-- Search the NASA Technical Report Server
openbsd		-- Search OpenBSD related information (
pgpkeys		-- Search the PGP key database
piratebay	-- Search for torrents
port		-- Look up a TCP/UDP port number on
pubmed		-- Search medical/molbio databases (
rae		-- Busca en el diccionario de la Real Academia de la Lengua Espaņola (Spanish Dictionary)
rfc		-- Search RFCs (internet standards documents)
rhyme		-- Search for rhymes et al using Lycos Rhyme (
rpmsearch	-- Search for RPMs in various distros
scholar		-- Search Google Scholar (
scicom		-- Search Scientific Commons
scpan		-- Search the Comprehensive Perl Archive Network (
scroogle	-- Search Google anonymously via Scroogle (
slashdot	-- Search stories on Slashdot (
slinuxdoc	-- Search entries in LDP (
sourceforge	-- Search SourceForge (
springer	-- Search Springer for Books and Articles
stockquote	-- Get a single stock quote (multiple providers)
sunonesearch	-- Search Sun One Search (
thesaurus	-- Look up word in Merriam-Webster's Thesaurus (
translate	-- Translate human languages (various providers)
urban		-- Search for a definition
w3css		-- Validate a CSS URL with the w3c CSS validator (
w3html		-- Validate a web page URL with the w3c validator (
w3link		-- Check web page links with the w3c linkchecker (
w3rdf		-- Validate a RDF URL with the w3c RDF validator (
wayback		-- Search The Internet Archive's Wayback Machine for a URL (
webster		-- Look up word in Merriam-Webster's Dictionary (
wetandwild	-- Real time weather information (many sources)
wikipedia	-- Search the free encyclopedia wikipedia
woffle		-- Search the web using Woffle (localhost:8080)
yahoo		-- Search Yahoo categories (
youtube		-- Search YouTube (
yubnub		-- Use the social command-line for the web (
Surfraw's commands can be shortened even further to require only the name of the elvi without the sr or surfraw prefixes; it does this by modifying the current shell's (e.g., bash's) startup files with the provided surfraw-update-path command.
Posted in Uncategorized
Views 3400 Comments 0
« Prev     Main     Next »
Total Comments 0




All times are GMT -5. The time now is 02:33 AM.

Main Menu
Write for LQ is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration