以下均根据官方文档及相关翻译整合和梳理
HTTP/FTP/SFTP选项
1 | --all-proxy=<PROXY> |
为所有协议的传输使用代理服务器。用 “”(空字串)来覆盖之前定义的代理。您可以使用 --http-proxy
,--https-proxy
和 --ftp-proxy
选项为某个协议指定代理服务器。该选项对所有下载有效。
代理地址格式[http://][USER:PASSWORD@]HOST[:PORT]
。另请参见: 环境(ENVIRONMENT)章节。
如果用户名和密码被内置在了代理地址中,并且还通过–{http,https,ftp,all}-proxy-{user,passwd}选项来指定,这些之后被指定的选项覆盖之前的选项。例如,如果你在aria2.conf配置文件中指定
http-proxy-user=myname, http-proxy-passwd=mypass
并且在命令行也指定--http-proxy="http://proxy"
, 然后你会得到HTTP代理设置http://proxy
带上用户名myname
和密码mypass
。另一个例子,如果你在命令行指定
--http-proxy="http://user:pass@proxy" --http-proxy-user="myname" --http-proxy-passwd="mypass"
,然后你会得到HTTP代理设置http://proxy
带上用户名myname
和密码mypass
。再一个例子,如果你在命令行指定
--http-proxy-user="myname" --http-proxy-passwd="mypass" --http-proxy="http://user:pass@proxy"
,然后你会得到HTTP代理设置http://proxy
带上用户名user
和密码pass
。
1 | --all-proxy-passwd=<PASSWD> |
为 --all-proxy
指定密码。
1 | --all-proxy-user=<USER> |
为 --all-proxy
指定用户。
1 | --checksum=<TYPE>=<DIGEST> |
设置校验和。TYPE是哈希类型。可被支持的哈希类型列在aria2c -v
的Hash Algorithms
。DIGEST是十六进制摘要。例如,像这样设置sha-1十六进制:sha-1=0192ba11326fe2298c8cb4de616f4d4140213838
。这个选项只会被应用到HTTP(S)/FTP下载。
1 | --connect-timeout=<SEC> |
设置连接 HTTP/FTP/代理服务器的超时(以秒计)。在连接建立之后,此选项将失效,并以 –timeout 选项替代。默认:==60==。
1 | --dry-run [true|false] |
如果填 true,aria2 仅检查远端文件是否可用而不下载数据。此选项对 HTTP/FTP 下载有效。如果启用,BitTorrent 下载会取消。默认:==false==。
1 | --lowest-speed-limit=<SPEED> |
如果下载速度低于或等于此值(字节/秒),则断开连接。0意味着 aria2 没有最低速度限制。可附加 K 或 M(1K=1024,1M=1024K)。此选项对 BitTorrent 下载无效。默认:==0==。
1 | -x, --max-connection-per-server=<NUM> |
每个下载对单个服务器的最大连接数。默认:==1==。
1 | --max-file-not-found=<NUM> |
如果 aria2 从远端 HTTP/FTP 服务器收到了 NUM 次“文件未找到”状态,且没有得到任何数据,就认为此下载失败。指定 0 来禁用此选项。此选项仅适用于 HTTP/FTP 服务器。重试次数计入--max-tries
,所以也应该设置这个选项。默认:==0==。
1 | -m, --max-tries=<N> |
设置重试次数。0 表示不限次数。默认:==5==。
1 | -k, --min-split-size=<SIZE> |
aria2 不分割小于 2 * SIZE 字节范围的文件。例如,让我们考虑下载 20MiB 的文件,如果 SIZE 为10M,aria2 可以将文件拆分为2个[0-10MiB]和[10MiB-20MiB]的文件,并使用 2 个源(如果 –split>=2)下载它。如果 SIZE 为 15M,由于 2 * 15M>20MiB,aria2 不会拆分文件并使用 1 个源下载。你可以追加 K 或 M(1K = 1024,1M = 1024K)。可能的值: 1M -1024M。默认: ==20M==。
1 | --netrc-path=<FILE> |
指定 netrc 文件的路径。默认:==$(HOME)/.netrc==
netrc 文件的权限必须设置为600.否则,该文件会被忽略。
1 | -n, --no-netrc [true|false] |
禁用 netrc 支持。默认启用。
只有
--no-netrc
设置为false
时,netrc 文件在启动时被读取。所有如果--no-netrc
在启动时设置为true
,则整个会话期间没有netrc可用。即使使用aria2.changeGlobalOption()
来设置--no-netrc=false
,也不能启用netrc。
1 | --no-proxy=<DOMAINS> |
指定不应使用代理的主机名、域名或(含或不含CIDR 块的)网络地址列表,以半角逗号 “,”分隔。
对于带有子网掩码的网络地址,IPv4和IPv6地址均起作用。当前实现无法解析URI的主机名来与
--no-proxy
指定的网络地址做比较。所以仅当URI具有数字IP地址时才有效。
1 | -o, --out=<FILE> |
文件保存名字。此文件将以此名字永久保存在 --dir
参数所指定的相对路径下。当 --force-sequential
参数被启用时,此选项被忽略。
不能给 Metalink 或 BitTorrent 下载指定文件名。该选项指定的文件名仅适用于直接使用命令行给 aria2 提供URI地址,而使用
--input-file, --force-sequential
选项时不生效。示例:
1 >$ aria2c -o myfile.zip "http://mirror1/file.zip" "http://mirror2/file.zip"
1 | --proxy-method=<METHOD> |
设置代理请求方式。请求方式是get
或者tunnel
。无论该选项如何配置,HTTPS下载始终使用tunnel
。默认:==get==。
1 | -R, --remote-time [true|false] |
从 HTTP/FTP 服务器获取远程文件的时间戳,确定其可用时将其应用到本地文件。默认:==false==。
1 | --reuse-uri [true|false] |
如果未使用的 URI 已用完,复用已用过的。默认:==true==。
1 | --retry-wait=<SEC> |
设定重试等待时间。秒数 > 0 时,如果 HTTP 返回 503 错误,aria2 会在 <秒数> 秒后重试下载。默认:==0==。
1 | --server-stat-of=<FILE> |
指定保存的服务器性能配置文件的名称。也可以使用 --server-stat-if
选项加载保存的数据。有关文件格式,参见服务器性能配置文件(Server Performance Profile)。
1 | --server-stat-if=<FILE> |
指定要加载的服务器的性能配置文件的名称。
加载的数据将被用在某些 URI 选择器之中,如feedback
。参见 --uri-selector
选项。有关文件格式,参见服务器性能配置文件(Server Performance Profile)。
1 | --server-stat-timeout=<SEC> |
指定从上次连接服务器起,弃用性能档案文件的超时(以秒计)。默认:==86400 (24小时)==。
1 | -s, --split=<N> |
使用 N 个连接下载文件。如 N 小于需要下载的 URI 数量,那么将使用所有连接,剩余的 URL 将作为候补。如 N 大于需要下载的 URI 数量,多余的 URL 将用于并行下载。到主机的连接数量受 --max-connection-per-server
选项限制。参见 --min-split-size
选项。默认:==5==
一些 Metalinks 规定连接服务器的数量。aria2 严格遵守。这意味着如果 Metalink 定义的最大连接数小于N,那么 aria2 使用这个最大连接数代替N。
1 | --stream-piece-selector=<SELECTOR> |
指定在 HTTP/FTP 下载中使用的块选择算法。
块指的是在并行分块下载中固定长度的分段。如果给定default
,aria2选择分块以减少建立连接的数量。 这是个合理的默认行为,因为建立连接是一个昂贵的操作。 如果给定inorder
,aria2会选择最小索引的块。索引等于0表示文件的第一个块。 这会在边下边播的场景中十分有用。 --enable-http-pipelining
选项有可能有助于减少重新连接的开销。请注意aria2生效了--min-split-size
选项,因此对--min-split-size
选项有必要指定个合理的值。 如果给定random
,aria2将会随机选择块。 像inorder
一样,--min-split-size
选项也是可以被生效的。如果给定geom
,一开始 aria2 像inorder
一样选择索引最小的块,但是它会成倍地增加与前一个被选中块之间的空间。这将会减少建立连接的数量,同时还会先下载文件的开头部分。这会在边下边播的场景中十分有用。默认:==default==。
1 | -t, --timeout=<SEC> |
设置超时(以秒计)。默认:==60==。
1 | --uri-selector=<SELECTOR> |
指定 URI 选择算法。可能的值有inorder
、 feedback
和 adaptive
。如果指定inorder
,将以 URI 列表中显示的顺序尝试 URI。如果指定feedback
,aria2 将根据先前下载中监测到的下载速度并选择 URI 列表中最快的服务器。此选项也可以有效地跳过死镜像。监测到的下载速度是 --server-stat-of
和 --server-stat-if
选项中提到的服务器性能档案文件的一部分。如果指定adaptive
,则从第一个和保留的连接选择最好的镜像。对于附加的连接,将返回未经测试的镜像,并且如果如果它们中的每一个都经过了测试,则返回需要再次测试的镜像。否则,不再选择镜像。如同feedback
,此配置使用服务器的性能档案文件。默认:==feedback==