OnWorks favicon

browser-history - Online in the Cloud

Run browser-history in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command browser-history that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator



browser-history - external history of web browsers, such as netscape


browser-history [ options ]


Browser-History is a client-side X daemon maintaining a browser-independent global history
of all the web sites you visited. Its usage is very simple, just put the following line in
your .xinitrc or your X start-up script:
browser-history &
And open the file ~/.browser-history/history-log.html and bookmark it.

Browser-history came from the will to overcome a Netscape bug: there was no global
history, and if you close a window, its whole history is lost. For people browsing lots of
sites, having a possibility to track back where one has been before means that you don't
have to put everything in your bookmarks file. If you are not sure if a site may be worth
remembering, don't add it in your bookmarks. If you need it later, just browse your
history files.

Later, it came to our minds that this also could be a valuable add-on to people writing
experimental browsers, so they don't have to add this functionality to their browser

Browser-history is a small and efficient daemon. Real user services could be built on top
of the log files it maintains for more possibilities (graphical representation, advanced
search options, collective histories). It can be seen as a quick-and-dirty hack wrt to the
general solution of using a personal proxy to provide this history and housekeeping
facilities. But in the meantime, it is easy to use and it works.


Browser-History spies your web browser and logs in ~/.browser-history/history-log.html all
the URLs you went through. You can then browse the log under Netscape or other browsers
via the URL: file:~/.browser-history/history-log.html (replace the ~ by your home
directory). It tracks automagically all already present browser windows, and all new ones
created in the future. This program has no user interface. It just appends information to
a log file in html format so you can browse it through a web browser. If more that one
hour has passed since last entry, it draws an horizontal lines, and adds H1 headers to
delimit new days. Each week (Sunday mornings), it archives the week history, compresses it
by gzip (that you must have in your path), and starts a new history with links to the
older ones. To make room you can just remove the obsolete history files. You can search
files for string XXX in shell via:
zgrep XXX ~/.browser-history/*

This version (2.6) works with Netscape, Arena and Amaya.

URLs can be excluded from logging by putting them, one per line in the file
~/.browser-history/history-log.exclude , then, if an URL begins with a line from this
file, it is not logged. In this file, empty lines or lines beginning by # are comments
This file is read once at startup, and re-read when receiving the signal 1. e.g:

# We exclude local files
# Exclude search engines...

When browser-history is run, it looks if another one is running, and by default it kills
the previous one if it is an older version. Otherwise, it the new one is the same version
number or older, it just aborts.


All options can be given by their first letter: you can specify either -verbose or -v, but
you cannot group options, e.g. you must say -v -k , but not -vk

-display display_name
Specifies X display, otherwise contents of $DISPLAY is used

outputs information on what it is doing. useful for debug.

prints version number and exit.

-logdir directory
which directory to store files into? defaults to ~/.browser-history

-gzip gzip_filename
the complete path to the gzip compressor. Defaults to "gzip". E.g:
-gzip /usr/gnu/bin/gzip

-seconds delay
if two entries are made are more than delay seconds apart, an horizontal rule will
separate them, else just a simple line break. Defaults to one hour (3600).

If there is an already running browser-history on the display, aborts. Default is
to replace it only if the version is older than ours.

If there is an already running browser-history on the display, aborts. Default is
to replace it only if the version is older than ours.

-kill If there is an already running browser-history on the display, kills it, then
terminates immediately in all cases.

Never Grab the X Server, which might cause deadlocks while debugging, when
browser-history or gdb tries to print on the grabbed xterm or emacs.

Cause the currently running instance of browser-history to save a list of all the
URLs and their titles that are currently being viewed by a browser-history
compatible browser to the normal history file as a "checkpoint".


A log file can have some decorative HTML to represent days, but each entry has the form:
(on a single line since version 2.4)
<a href="/URL">URL</a>
YYYY/MM/DD-HH:MN:SS <small>windowid</small>
where the following items are:
separator: either <hr> or <br>
name: the name of the document (window title)
URL: its URL
YYYY/MM/DD-HH:MN:SS: year, month number, day number, hour,
minutes, seconds. (2-digit numbers)
windowid: the X window ID of the browser window, in hexadecimal

Note: Before version 2.4, the 4 sub-parts were separated by newlines, but since 2.4, they
are only blank-separated to ease searching for URL in log files via "grep".

Note: Before version 2.5, the year was stored in 2 digits. Now it is stored in 4 (or more
:-) digits, to fix this Y2K bug


The latest version of browser-history can be found at:
and its WWW home page, with full technical documentation is at:

Use browser-history online using onworks.net services

Free Servers & Workstations

Download Windows & Linux apps

Linux commands