Creating a hyperlink from command line output on a terminal

This information was not present in Ask Ubuntu, but I found the answer in another site: https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda

The escape sequence to create the above link is:

printf '\e]8;;https://ubuntu.com/\e\\Ubuntu 21.10\e]8;;\e\\\n'

The general format is:

The hyperlink open sequence starts with

  • the \e]8 escape sequence (ESC, ], and 8),
  • the params,
  • the target URI, and
  • the closing \e\ escape sequence (ESC and \)

where params is optional: \e]8;params;URI\e\\

Then comes the content that will be painted as hyperlink.

The hyperlink is closed with the same escape sequence, omitting params and the URI, but keeping the separators: \e]8;;\e\\


As a bonus to this answer, I suggest you use the following alias in your ~/.bash_aliases file:

alias ll="LC_COLLATE=C ls --hyperlink=auto --group-directories-first --color=auto -alF"

Here, the --hyperlink argument will direct the ls command to automatically create hyperlinks for file names on terminal output, so that when they are Ctrl+clicked they will open in Nautilus or the associated application.