V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
GHvyuR7N
V2EX  ›  Linux

qbittorrent 完成脚本 %N 中文输出为问号如何处理 ?

  •  
  •   GHvyuR7N · 2022-02-23 14:58:00 +08:00 · 2408 次点击
    这是一个创建于 786 天前的主题,其中的信息可能已经有所发展或是发生改变。

    qbittorrent 完成脚本 %N 中文输出为问号如何处理 ?

    Linux 业余用户学习中

    环境为群晖 DS216Play ,armv7 ,无法安装 docker ,使用 opkg install qbittorrent 安装 qbittorrent 。

    • 测试脚本:
    #!/bin/bash
    
    # /bin/bash ./qbittorrent2bark.sh "%N" "%G"
    
    torrentname=$1
    torrenttag=$2
    
    echo $1 >> /volume1/data/test.txt
    echo $torrentname >> /volume1/data/test.txt
    echo $2 >> /volume1/data/test.txt
    echo $torrenttag >> /volume1/data/test.txt
    
    • qbittorrent 日志摘要:
    # qbittorrent.log
    
    (N) 2022-02-19T22:13:47 - Torrent:铁路边的孩子们,运行外部程序,指令:/volume1/data/qbittorrent/qbittorrent2bark.sh "铁路边的孩子们" "bark"
    
    • 输出中文乱码:
    # test.txt
    
    ???????
    ???????
    bark
    bark
    
    • qBittorrent 版本信息:
    qBittorrent version: v4.3.9
    
    Qt: 5.14.2
    Libtorrent: 1.2.13.0
    Boost: 1.77.0
    OpenSSL: 1.1.1l
    zlib: 1.2.11
    
    • 系统环境
    # $ echo $LANG
    
    en_US.utf8
    
    # $ locale
    
    LANG=en_US.utf8
    LC_CTYPE="en_US.utf8"
    LC_NUMERIC="en_US.utf8"
    LC_TIME="en_US.utf8"
    LC_COLLATE="en_US.utf8"
    LC_MONETARY="en_US.utf8"
    LC_MESSAGES="en_US.utf8"
    LC_PAPER="en_US.utf8"
    LC_NAME="en_US.utf8"
    LC_ADDRESS="en_US.utf8"
    LC_TELEPHONE="en_US.utf8"
    LC_MEASUREMENT="en_US.utf8"
    LC_IDENTIFICATION="en_US.utf8"
    LC_ALL=en_US.utf8
    
    # $ locale -a
    
    C
    cs_CZ.utf8
    da_DK.utf8
    de_DE.utf8
    en_US.utf8
    es_ES.utf8
    fr_FR.utf8
    hu_HU.utf8
    it_IT.utf8
    ja_JP.utf8
    ko_KR.utf8
    nb_NO.utf8
    nl_NL.utf8
    pl_PL.utf8
    POSIX
    pt_BR.utf8
    pt_PT.utf8
    ru_RU.utf8
    sv_SE.utf8
    tr_TR.utf8
    zh_CN.utf8
    zh_TW.utf8
    
    • 自己尝试排查错误:
    #!/bin/bash
    
    # 标签为 bark 的种子下载完成后,推送通知到 bark
    # qBittorrent 脚本设置为:/bin/bash ./qbittorrent2bark.sh "%N" "%G"
    
    torrentname=$1
    torrenttag=$2
    
    echo $1 >> /volume1/data/test.txt
    echo $2 >> /volume1/data/test.txt
    echo $LANG >> /volume1/data/test.txt
    echo $locale >> /volume1/data/test.txt
    
    # ./test.txt
    
    ??????????9.7????????????????????????????????????? by ??? [???] (z-lib.org).epub
    bark
    
    
    en_US.utf8
    

    脚本内运行echo $LANG 不输出值,最后一条是我 ssh 进入 DS216Play 手动运行 echo $LANG >> /volume1/data/test.txt 的测试。

    第 1 条附言  ·  2022-03-20 20:17:54 +08:00

    自问自答,问题已解决: 为 /opt/etc/init.d/S89qbittorrent 添加 LANG 环境即可:

    # sudo vim S89qbittorrent
    
    #!/bin/sh
    
    ENABLED=yes
    PROCS=qbittorrent-nox
    ARGS="--webui-port=9080 --profile=/opt/etc --configuration=entware -d"
    PREARGS=""
    DESC=$PROCS
    PATH=/opt/sbin:/opt/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    LANG=en_US.utf8
    
    . /opt/etc/init.d/rc.func
    
    4 条回复    2022-05-21 11:09:18 +08:00
    GHvyuR7N
        1
    GHvyuR7N  
    OP
       2022-03-20 20:11:02 +08:00
    自问自答,问题已解决:
    为 /opt/etc/init.d/S89qbittorrent 添加 LANG 环境即可:

    ```
    # sudo vim S89qbittorrent

    #!/bin/sh

    ENABLED=yes
    PROCS=qbittorrent-nox
    ARGS="--webui-port=9080 --profile=/opt/etc --configuration=entware -d"
    PREARGS=""
    DESC=$PROCS
    PATH=/opt/sbin:/opt/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    LANG=en_US.utf8

    . /opt/etc/init.d/rc.func
    ```
    x2009again
        2
    x2009again  
       2022-05-21 00:50:28 +08:00
    centos7 qbittorrent4.1.9 也有这种问题,请问应该怎么处理?
    x2009again
        3
    x2009again  
       2022-05-21 00:51:25 +08:00
    它的日志输出就是乱码了
    x2009again
        4
    x2009again  
       2022-05-21 11:09:18 +08:00
    @x2009again 自问自答,参考后问题已解决:升级到 4.2.3 后(密码加密协议不向后兼容,使用旧密码无法登录,需要重置),日志中的中文没有乱码了,在启动服务中增加了语言环境变量
    Environment="LANG=zh_CN.UTF-8"
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2972 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 03:16 · PVG 11:16 · LAX 20:16 · JFK 23:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.