plowprobe(1)

NAME
plowprobe - Gather information from file sharing download links

SYNOPSIS
plowprobe [OPTIONS]... [MODULE_OPTIONS]... URL|FILE...

DESCRIPTION
plowprobe is a command-line tool designed for retrieving metadata from file-sharing download links. Information are printed on stdout (only alive links). Provided links can also be downloaded with plowdown(1).

OPTIONS

  Common options

-i, --interface=IFACE
    If your machine has several network interfaces, force using IFACE interface.

--printf=FORMAT
    Print results (on stdout) in a given format (for each non-dead link). Default format string is "%F%u%n". Interpreted sequences are:

    %%  raw % character

    %c  probe function return status (0 for success, 13 for dead link, see list below)

    %f  filename (can be empty string)

    %F  empty if %f is empty, or alias to "# %f%n".

    %h  filehash (can be empty string if not available). Usually MD5 or SHA1. If hoster supports several algorithms, the longest digest is used.

    %i  file identifier (can be empty string if not available). Usually included in input URL.

    %m  module name

    %n  newline

    %s  filesize (positive integer) in bytes (can be empty string if not available). Note: It's often approximative.

    %t  tabulation character

    %T  file timestamp (can be empty string if not available). Unix epoch time is preferred.

    %u  download (source) url

    %U  same as %u but url is escaped for JSON usage

    %v  alternate or refactored download url. This can be for example fixing primary hostname (to avoid HTTP 301 redirection), or force HTTPS protocol. If not available, alias to %u.

    %V  same as %v but url is escaped for JSON usage

    Note: Metadata are often not fully available from hosters nor implemented by all modules.

  Logging options

-v, --verbose=LEVEL
    Set output verbosity level:
    0 none,
    1 errors,
    2 notice (default behavior),
    3 debug,
    4 report (very noisy, log HTML pages).

-q, --quiet
    Alias for -v0. Do not print any debug messages.

  Miscellaneous options

--no-color
    Disables log messages (stderr only) output coloring.

--follow
    If no module is found for link, follow HTTP redirects (curl -L). Default is disabled.

--get-module
    Echo module name for each URL and exit. Faster than --printf=%m. Useful for wrappers.

--no-curlrc
    Do not use curl config file (~/.curlrc).

--curlrc=FILE
    Force using an alternate curl configuration file. Replaces ~/.curlrc if it exists. This option has no effect when --no-curlrc is defined.

--no-plowsharerc
    Do not consider any configuration file.

--plowsharerc=FILE
    Force using an alternate configuration file (instead of per-user or systemwide plowshare.conf). This option has no effect when --no-plowsharerc is defined.

--modules
    Display all supported module names (one per line) and exit. Useful for wrappers.

  Generic program information

-h, --help
    Display this help and exit.

-H, --longhelp
    Display complete help (with module options) and exit.

--version
    Output version information and exit.

MODULE OPTIONS

There is none yet!

FILES

~/.config/plowshare/plowshare.conf
    This is the per-user configuration file.

/etc/plowshare.conf
    Systemwide configuration file.

The file format is described in plowshare.conf(5).

~/.config/plowshare/modules.d/
    User directory considered when searching for modules at startup (plowprobe will try to open ~/.config/plowshare/modules.d/*/config). One file per module (hoster).

ENVIRONMENT VARIABLES
The following environment variables may affect plowprobe:

HOME
    Search for user configuration directory in ~/.config/plowshare (see FILES section above). If found, ~/.curlrc will be used (use --no-curlrc to disable it).

PLOWSHARE_CURL
    Specifies an alternate curl command ($PATH search is considered). If not defined, curl is used.

XDG_CONFIG_HOME
    The directory to store user configuration files. If not defined, ~/.config is assumed.

EXIT CODES
Possible exit codes are:

0   Success. Folder contain one or several files.

1   Fatal error. Upstream site updated or unexpected result.

2   No available module (provided URL is not supported).

3   Network error. Mostly curl related.

8   System generic error.

10  Link alive but temporarily unavailable.

11  Link alive but requires a password.

12  Link alive but requires some authentication (private or premium link).

13  Link is dead.

15  Unknown command line parameter or incompatible options.

If plowprobe is invoked with multiple links and one or several errors occur, the first error code is returned added with 100.

AUTHORS
Plowshare was initially written by Arnau Sanchez. See the AUTHORS file for a list of some of the many other contributors. Plowshare is (C) 2010-2016 The Plowshare Team

SEE ALSO
plowdown(1), plowup(1), plowdel(1), plowlist(1), plowshare.conf(5), plowmod(1).