Linux Blog


Section: User Commands (1)
Updated: Aug, 2006
Index Return to Main Contents


links - lynx-like alternative character mode WWW browser  


links [options] URL  


links is a text mode WWW browser with ncurses interface, supporting colors, correct table rendering, background downloading, menu driven configuration interface and slim code. Frames are supported. You can have different file formats associated with external viewers. mailto: and telnet: are supported via external clients. links can handle local (file://) or remote (http:// or ftp://) URLs.



Most options can be set in the user interface or config file, so usually you do not need to care about them.

Run Links in graphics mode. If not given, Links will run in text mode. Running in graphics mode means that Links will probe all compiled-in graphics devices and run on the first found. If none found, links will not run in text mode. This option works only if --enable-graphics was given to ./configure.

Run in text mode (overrides previous -g).

-driver <driver name>
Graphics driver to use. Drivers are: x, svgalib, fb, directfb, pmshell, atheos. List of drivers will be shown if you give it an unknown driver. Available drivers depend on your operating system and available libraries.

-mode <parameter>
Pass a parameter to the graphics driver. On SVGAlib, this is widthxheightxdepth, (where depth is 16, 256, 32K, 64K, 16M or 16M32) and defines the graphics mode, on X the format is WIDTHxHEIGHT and defines the window size.

-display <x-display>
Set Xwindow display.

Treat files with unknown type as html rather than text. (can be toggled with '\' key)

-source <url>
Write unformatted data stream to stdout.

-dump <url>
Write formatted document to stdout.

-width <number>
For dump, document will be formatted to this screen width (but it can still exceed it if lines can't be broken).

-codepage <codepage>
For dump, convert output to specified character set -- for eaxmple iso-8859-2, windows-1250.

Restrict links so that it can run on an anonymous account. No local file browsing. No downloads. Executing of viewers is allowed, but user can't add or modify entries in association table.

Runs links as a separate instance - instead of connecting to existing instance.

-download-utime <0>/<1>
Set time of downloaded files to last modification time reported by server.

-async-dns <0>/<1>
Asynchronous DNS resolver on(1)/off(0).

-max-connections <max>
Maximum number of concurrent connections. (default: 10)

-max-connections-to-host <max>
Maximum number of concurrent connection to a given host. (default: 2)

-retries <retry>
Number of retries. (default: 3)

-receive-timeout <sec>
Timeout on receive. (default: 120)

-unrestartable-receive-timeout <sec>
Timeout on non restartable connections. (default: 600)

-format-cache-size <num>
Number of formatted document pages cached. (default: 5)

-memory-cache-size <bytes>
Cache memory in Kilobytes. (default: 1024)

-image-cache-size <bytes>
Cache memory in Kilobytes. (default: 1024)

-http-proxy <host:port>
Host and port number of the HTTP proxy, or blank. (default: blank)

-ftp-proxy <host:port>
Host and port number of the FTP proxy, or blank. (default: blank)

-only-proxies <0>/<1>
"1" causes that Links won't initiate any non-proxy connection. It is useful for anonymization with tor or similar networks.

-download-dir <path>
Default download directory. (default: actual dir)

-language <language>
Set user interface language.

-http-bugs.http10 <0>/<1>
(default 0) "1" forces using only HTTP/1.0 protocol. (useful for buggy servers that claim to be HTTP/1.1 compliant but are not) "0" enables using both HTTP/1.0 and HTTP/1.1.

-http-bugs.allow-blacklist <0>/<1>
(default 1) "1" defaults to using list of servers that have broken HTTP/1.1 support. When links finds such server, it will retry the request with HTTP/1.0.

-http-bugs.bug-302-redirect <0>/<1>
(default 1) Process 302 redirect in a way that is incompatible with RFC1945 and RFC2068, but the same as Netscape and MSIE. Many pages depend on it.

-http-bugs.bug-post-no-keepalive <0>/<1>
(default 0) No keepalive connection after post requests. For some buggy servers.

-http-bugs.bug-no-accept-charset <0>/<1>
(default 0) Do not send Accept-Charset field of HTTP header. Because it is too long some servers will deny the request. Other servers will convert content to plain ascii when Accept-Charset is missing. <0>/<1>
(default 0) "1" causes that links won't advertise HTTP compression support (but it will still accept compressed data). Use it when you communicate with server that has broken compression support.

-http-bugs.retry-internal-errors <0>/<1>
(default 0) Retry on internal server errors (50x).

-http-bugs.aggressive-cache <0>/<1>
Always cache everything regardless of server's caching recomendations. Many servers deny caching even if their content is not changing just to get more hits and more money from ads.

-http-referer <0>/<1>
(default 0) 0 - do not send referer. 1 - send the requested URL as referer. 2 - send fake referer. 3 - send real referer. 4 - send real referer only to the same server.

-fake-referer <string>
Fake referer value.

-fake-user-agent <string>
Fake user agent value.

-ftp.anonymous-password <string>
Password for anonymous ftp access.

-ftp.use-passive <0>/<1>
Use ftp PASV command to bypass firewalls. <0>/<1>
Send more ftp commands simultaneously. Faster response when browsing ftp directories, but it is incompatible with RFC and some servers don't like it.

-menu-font-size <size>
Size of font in menu.

-background-color 0xRRGGBB
Set menu background color in graphics mode. RRGGBB are hex.

-foreground-color 0xRRGGBB
Set menu foreground color in graphics mode. RRGGBB are hex.

-scroll-bar-area-color 0xRRGGBB
Set color of scroll bar area. RRGGBB are hex.

-scroll-bar-bar-color 0xRRGGBB
Set color of scroll bar. RRGGBB are hex.

-scroll-bar-frame-color 0xRRGGBB
Set color of scroll bar frame. RRGGBB are hex.

-display-red-gamma <fp-value>
Red gamma of display. (default 2.2)

-display-green-gamma <fp-value>
Green gamma of display. (default 2.2)

-display-blue-gamma <fp-value>
Blue gamma of display. (default 2.2)

-user-gamma <fp-value>
Additional gamma. (defult 1)

-bfu-aspect <fp-value>
Display aspect ration.

-aspect-on <0>/<1>
Enable aspect ratio correction.

-dither-letters <0>/<1>
Do letter dithering.

-dither-images <0>/<1>
Do image dithering.

-display-optimize <0>/<1>/<2>
Optimize for CRT (0), LCD RGB (1), LCD BGR (2).

-enable-javascript <0>/<1>
Enable javascript.

-gamma-correction <0>/<1>/<2>
Type of gamma correction: (default 2) 0 - 8-bit (fast). 1 - 16-bit (slow). 2 - automatically detect according to speed of FPU.

-js.verbose-errors <0>/<1>
Display javascript errors.

-js.verbose-warnings <0>/<1>
Display javascript warnings.

-js.enable-all-conversions <0>/<1>
Enable conversions between all types in javascript.

-js.enable-global-resolution <0>/<1>
Resolve global names.

-js.manual-confirmation <0>/<1>
Ask user to confirm potentially dangerous operations. (opening windows, going to url etc.) Default 1.

-js.recursion-depth <integer>
Depth of javascript call stack.

-js.memory-limit <memory amount>
Amount of kilobytes the javascript may allocate.

-bookmarks-codepage <codepage>
Character set of bookmarks file.

-bookmarks-file <file>
File to store bookmarks.

-html-assume-codepage <codepage>
Use the given codepage when the webpage did not specify its codepage. (default: ISO 8859-1)

-html-hard-assume <0>/<1>
Use always character set from "-html-assume-codepage" no matter what server sent.

-html-tables <0>/<1>
Render tables. (0) causes tables being rendered like in lynx.

-html-frames <0>/<1>
Render frames. (0) causes frames rendered like in lynx.

-html-images <0>/<1>
Display links to unnamed images as [IMG]

-html-image-names <0>/<1>
Display filename of an image instead of [IMG].

-html-display-images <0>/<1>
Display images in graphics mode.

-html-image-scale <percent>
Scale images in graphics mode.

-html-bare-image-autoscale <0>/<1>
Autoscale images displayed in full screen.

-html-numbered-links <0>/<1>
Number links in text mode. Allow quick link selection by typing link number and enter.

-html-table-order <0>/<1>
In text mode, walk through table by rows (0) or columns (1).

-html-auto-refresh <0>/<1>
Process refresh to other page (1), or display link to that page (0).

-html-target-in-new-window <0>/<1>
Allow opening new windows from html.

-html-margin <number of spaces>
Margin in text mode.

-html-user-font-size <size>
Size of font on pages in graphics mode.

-lookup <hostname>
Does name lookup, like command "host".

Prints the links version number and exit.

Printf a help screen

More options can be seen with links -h



The keys you may use while navigating are
file menu
next frame
page down
page down
page up
page up
page up
next link/down (text mode), scroll down (graphics mode)
prev link/up (text mode), up (graphics mode)
copy to clipboard
copy to clipboard (OS/2 only)
scroll up (text mode only)
scroll up
scroll down
scroll down
scroll left
scroll right
end of page
enter link/press button (text mode), scroll right (graphics mode)
enter link/press button
go back (text mode), scroll left (graphics mode)
download link (text mode only)
download link (text mode only)
search in the page
search back in the page
find next match
find next match backwards
zoom actual frame
zoom actual frame
reload page
go to URL
edit the current URL and goto the result
bookmark manager
bookmark manager
quit, close window if more windows are open
quit, close window if more windows are open
document informations
toggle HTML source/rendered view



The following keys can be used while editing a line/jumping to a URL:
move right
move left
jump at the beginning
jump at the beginning
jump at the end
jump at the end
cut to clipboard
paste from clipboard
enter line
delete back character
delete back character
delete character
delete character
delete from beginning of the line
delete to the end of the line or delete line (in textarea)
auto complete line



Per-user configfile, automatically created by links.


links is known to work on Linux, FreeBSD, Solaris, IRIX, HPUX, Digital Unix, AIX, OS/2 and BeOS. Port for Win32 is in state of beta testing.  


You can't upload large files; it takes _lots_ of memory.

Please report any other bugs you find to Mikulas Patocka <>



links is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.



links was written by Mikulas Patocka, Karel 'Clock' Kulhavy, Petr 'Brain' Kulhavy, and Martin 'PerM' Pergel. See file AUTHORS for a list of people contributing to this project. The homepage of links can be found at This manual page was written by Peter Gervai <>, using excerpts from a (yet?) unknown links fan for the Debian GNU/Linux system (but may be used by others). Updated by Karel Kulhavy.



lynx(1), w3m(1)




Linux Blog


examples of using links

Links -g Graphical links