问题标签 [aria2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
86 浏览

linux - 为什么aria2c Linux版比Windows版大很多

目前,我开始在 Linux 中使用aria2 。一开始,我以为我只需要下载一个可执行文件,就像 Windows 中的 'aria2c.exe' 一样。但是我错了。在 Linux 中,我需要使用 c++ 编译器来编译和运行“make”命令。完成需要几分钟。

完成后,可执行文件“aria2c”为 69MB,远大于“aria2c.exe”(4MB)。

我想知道是什么导致了这种差异。

0 投票
0 回答
56 浏览

aria2 - 'aria2: : DHKeyExchange 的初始化没有匹配的构造函数

我正在编译和安装 Aria2,运行时遇到以下错误make install

中没有错误./ifconfigure make-j4

希望得到帮助。

0 投票
2 回答
1950 浏览

bash - 使用 aria2c 并行下载多个文件

我想使用以下代码与 aria2c 并行下载多个 torrent 文件:

解决子shell的问题

但是所有进程都在停止进程中

怎么能把它搞定?

0 投票
1 回答
406 浏览

bash - 只有在前一个进程完成后才运行一个进程 | 重击

我正在使用自动运行脚本来处理数据aria2的选项来下载一些数据。--on-download-completebash

专注于我的bash剧本,

基本上,每次下载完成时,都会for开始一个循环。首先,它检查下载的产品是否已经被处理,如果没有,它会运行一个特定的任务。

我的问题是每次下载完成时,bash脚本都会运行。这意味着如果从上次bash运行脚本时分析没有完成,两个任务将重叠并吃掉我所有的内存资源。

理想情况下,我想:

  • 每次bash运行脚本时,检查是否还有正在进行的进程。

  • 如果是这样,请等到它完成然后运行

这就像创建一个任务队列(就像在一个for循环中,每次迭代都等到前一个迭代完成)。

我试图用wait或识别出解决方案,PID但没有成功。

也许改变方法,而不是aria2用来处理刚刚下载的数据,实施另一个解决方案?

0 投票
0 回答
310 浏览

node.js - Aria2c 每 30 秒暂停和恢复一次

我从服务器下载文件时遇到问题,问题是当我开始下载文件时,下载速度很好,但几秒钟后,下载速度下降。

我正在使用aria2c并想知道是否有任何方法可以每 30 秒暂停和恢复下载?

我从另一个类似的帖子中了解到,他创建了一个脚本来解决这个问题。

我不了解JS,有人可以帮我构建一个脚本吗?非常感谢。

帖子链接:Aria2c 每 5 秒暂停和恢复一次

以下是他提到的:

我通过使用 aria2c RPC INTERFACE 解决了我的问题。

aria2 提供基于 HTTP 的 JSON-RPC 和基于 HTTP 的 XML-RPC 接口,它们提供了基本相同的功能。aria2 还通过 WebSocket 提供 JSON-RPC

我在 Node.js 中编写了一个脚本,它使用 aria2.pause 和 aria2.unpause 暂停 > 并每 5 秒恢复一次

0 投票
0 回答
477 浏览

post - aria2c 可以支持 POST 请求吗?

我想提交一个 POST 请求并通过 aria2c 使用多个下载线程下载输出。这可能吗?谢谢。

0 投票
1 回答
699 浏览

bash - 用磁铁的“dn”名称保存 aria2 生成的 .torrent 文件?

Aria2能够指定一个磁力 URI,它会保存一个 torrent 文件。该文件以带有后缀的十六进制编码信息哈希的名称保存.torrent

磁铁 URI有一个选项?dn=,即显示名称。保存种子时是否可以使用此名称,以便

输出ubuntu-18.04.2-desktop-amd64.iso.torrent而不是cf7da7ab4d4e6125567bd979994f13bb1f23dddd.torrent

0 投票
2 回答
1376 浏览

shell - on-download-complete 不能与 aria2 一起使用

我不是 root 用户,所以我使用 ./configure --prefix=/home/xxx/.local 安装 aria2-1.34.0,一切正常,但下载完成

我设置 on-download-complete=/home/xxx/aria2/a.sh

任务下载完成后,日志显示一切正常

但实际上什么也没发生,它没有用!!!

aria2c 路径:

aria2.conf

我不知道如何处理它,你能给我任何建议吗,谢谢。

0 投票
1 回答
498 浏览

linux - pacman xfercommand 不适用于 echo 和 aria2

TLDR:

XferCommand = echo Downloading %u ... && /usr/bin/aria2c --conf-path=/etc/pacman-aria2.conf %u

在 pacman.conf 输出中

Downloading https://mirror.23media.com/manjaro/stable/core/x86_64/core.db ... && /usr/bin/aria2c --conf-path=/etc/pacman-aria2.conf https://mirror.23media.com/manjaro/stable/core/x86_64/core.db

并且第二个 aria2 命令永远不会执行 - pacman.conf 和 pacman-aria2.conf 在底部,长版本低于 TLDR

简介: 我想要实现的是使用带有 pacman 的外部下载器来说明它当前正在下载的内容,而无需在终端输出中填充不必要的信息。由于 pacman 出现奇怪的下载速度问题,我尝试使用 wiki 推荐的内容:使用 /etc/pacman.conf 中的 XferCommand 将 aria2 用作下载器。由于 wiki 链接到这篇(https://bbs.archlinux.org/viewtopic.php?id=192072)文章,我在 /etc/pacman.conf 中使用了以下命令来使用 aria2 XferCommand = echo Downloading %u ... && /usr/bin/aria2c --conf-path=/etc/pacman-aria2.conf %u

你可以在底部找到完整的 pacman.conf 以及 pacman-aria2.conf。在终端中执行(并将 %u 更改为其他内容)此命令有效。遗憾的是,当在 pacman.conf 中执行时,echo 只会打印出整行,包括“&&”等等。pacman -Syyis的完整输出

完整输出sudo pacman -S 0ad(pacman 中的第一个条目,具有许多依赖项和大文件):

我打断了,因为完整性测试没有进行,我可以说它没有下载任何东西,因为它根本不需要时间,程序应该至少有 1GB

当然,第一件事是完全消除回声。这行得通。但是由于“下载结果”(文件下载完成时由 aria2 自动打印)向我的终端发送了大量垃圾邮件,我无法阅读任何内容,我在 pacman-aria2.conf 中添加了删除此输出的行。但是现在所有写入输出的内容如下所示: [#b72206 3.9MiB/5.2MiB(75%) CN:3 DL:5.0MiB] 所以我不知道它实际下载的是什么,这很烦人,尤其是当 pacman 一次下载许多东西时(例如pacman -Syu),因此需要“echo %u”。

其他修复尝试: 在我的 pacman.conf 中,您可以看到我(错误)修复的一些尝试的剩余部分。这里是简短的列表:

更改生成的两个命令的顺序Exception caught Exception: [download_helper.cc:451] errorCode=1 Unrecognized URI or unsupported protocol: &&

编写一个小 bash 脚本(/usr/local/bin/pacman-aria2.sh),它只在两行中包含两个命令,产生了这个:

我认为这是由于我没有将变量发送到脚本但我不知道如何正确执行

wget 和 curl 以及来自 wiki 的原始命令都不会产生想要的输出:wget 再次向控制台发送垃圾邮件以及 wiki 命令,另一方面 curl 完全没有任何信息。

结论: 由于 wiki 和 pacman 的手册页都没有说明有关 XferCommand 的更多信息,我无法猜测。任何提示表示赞赏。如果您需要更多信息,我会尽力提供。

也许相关信息:

文件:

/etc/pacman.conf:

/etc/pacman-aria2.conf:

0 投票
1 回答
119 浏览

bash - 将进程替换结果作为脚本执行

我想创建一个临时的shell 脚本,并将其作为参数传递给另一个脚本,即回调挂钩。是否可以为此使用流程替换?

在这个例子中,aria2c允许一个钩子作为参数。下载页面后,aria2c 将使用一些参数调用该钩子。理想情况下,我希望 aria2c 调用我的“虚拟”脚本,而无需先制作任何临时文件,如下所示:

但结果我得到一个许可错误: