2

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

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

#!/bin/bash
echo 123 > 1.txt

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

2019-10-28 19:04:11.295587 [NOTICE] [RequestGroup.cc:1216] Download complete: /home/xxx/aria2/data/0.png
2019-10-28 19:04:11.295598 [INFO] [DefaultBtProgressInfoFile.cc:415] The segment file /home/xxx/aria2/data/0.png.aria2 does not exist.
2019-10-28 19:04:11.295612 [INFO] [util.cc:2239] Executing user command: /home/xxx/aria2/a.sh b031d9399fb9d93f 1 /home/xxx/aria2/data/0.png

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

aria2c 路径:

/home/xxx/.local/aria2c

aria2.conf

enable-rpc=true

rpc-allow-origin-all=true

rpc-listen-all=false

max-concurrent-downloads=1

continue=true

max-connection-per-server=5

min-split-size=5M

split=5

max-overall-download-limit=5M

max-download-limit=2M

max-overall-upload-limit=0

max-upload-limit=0

dir=/home/xxx/aria2/data

file-allocation=prealloc

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

log=/home/xxx/aria2/aria2.log

log-level=info

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

4

2 回答 2

1

为我找到了解决方案

将 --on-download-complete 放入 cmd 而不是 aria2.conf

只需像这样运行 aria2:

aria2c --conf-path=/xxx/xxx/arai2.conf --on-download-complete=/xxx/xxx/xxx.sh -D

它有效

但我不知道如果在 conf 文件中设置--on-download-complete为什么它不起作用

于 2019-10-30T03:28:49.300 回答
0

根据官方文档

-D, --daemon [真|假]

作为守护进程运行。当前工作目录将更改为/,标准输入、标准输出和标准错误将重定向到/dev/null。默认值:假

您应该将 /home/xxx/aria2/a.sh 修改为

#!/bin/bash
echo 123 > $(dirname $0)/1.txt

将输出写入正确的位置。

于 2020-09-10T20:17:32.790 回答