plowprobe man page

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).

Currently supported hosting sites list is available in README file.

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!

Examples

2) Custom results format

# Print links information: filename and hash
$ plowprobe --printf '# %f (%h)%n%u%n' http://www.sendspace.com/file/5njdw7

# Print a JSON result
$ plowprobe --printf '{"url":"%U","size":%s}%n' http://www.sendspace.com/file/5njdw7

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/
User directory considered when searching for modules at startup (plowprobe will try to open ~/.config/plowshare/modules/config). One file per module (hoster).

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-2015 The Plowshare Team

See Also

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

Referenced By

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

February 5, 2015 GPL Plowshare for Bash 4