bookmarks - Export bookmarks from browsers and files

SYNOPSIS

$ bookmarks [-hVda] [-f format] [file ...]

-h, --help      help
-V, --version   version
-d              debug (sent to STDERR)
-a              all : process arguments and default locations
-f format       export format : csv, csv-noheader, html, html-raw,
                or any combination of characters t,u,d as
                <title> <url> <description> (default : tud)
-s              find schemeless URLs in text files (default : no)

DESCRIPTION

bookmarks is a tool to export bookmarks from files supplied as arguments. Without arguments, or with option -a, bookmarks will attempt to read files from browsers default locations. If file is a dash "-", STDIN is read and processed as plain text source.

Supported sources :

Supported fields :

Markdown, Gemini and plain text files are processed line by line (as UTF-8) :

  [markdown example](http://example.md/ "with description")
  => gemini://example.gmi gemini example
  plain text example http://example.txt with description

Output format :

By default, fields <title> <url> <description> are exported as plain text. This can be changed by using option -f and specifying any combination of characters t,u,d. Other possible values :

SEARCH BOOKMARKS INTERACTIVELY FROM CLI

This tool can be used to search, select and open bookmarks interactively from your terminal. The following instructions are for macOS.

Install the wonderful fzf (available in Homebrew), URI::Find (CPAN), App::uricolor (CPAN), and add these aliases to your shell :

Open link(s) with default application :

alias lk="bookmarks | uricolor | fzf --ansi --exact --multi | urifind | xargs open"

N.B. On Windows, I use busybox-w32 and a file lk.bat containing :

@echo off

bookmarks | uricolor | fzf --ansi --exact --multi | urifind | busybox xargs -n1 cmd /c start ""

Copy link(s) to clipboard :

alias lkc="bookmarks | uricolor | fzf --ansi --exact --multi | urifind | pbcopy"

These examples use the tool http_status provided by HTTP::SimpleLinkChecker (CPAN).

Check links and show status :

bookmarks -f u | xargs http_status

Show only broken links (parallel) :

bookmarks -f u | xargs -n10 -P16 http_status 2>/dev/null | perl -ne 'print if not /200$/'

INSTALLATION

To install this module automatically from CPAN :

cpan App::bookmarks

To install this module automatically from Git repository :

cpanm https://github.com/kal247/App-bookmarks.git

To install this module manually, run the following commands :

perl Makefile.PL
make     
make test
make install

PREREQUISITES

All are optional.

SUPPORT AND DOCUMENTATION

After installing, you can find documentation for this module with the perldoc command :

perldoc bookmarks

You can also look for information at :

This software is Copyright (c) 2019-2025 by jul.

This is free software, licensed under:

The Artistic License 2.0 (GPL Compatible)