V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
lander
V2EX  ›  程序员

curl 下载文件时乱码

  •  
  •   lander · 2023-09-27 11:14:15 +08:00 · 1339 次点击
    这是一个创建于 456 天前的主题,其中的信息可能已经有所发展或是发生改变。
    请教下,系统是 centos7.5 ,我们业务有个自动化脚本从服务端下载 tar.gz 包并重命名后自动安装,如下:
    mkdir -p pkgs_tmp && cd pkgs_tmp && curl -o xxx_x64.tar.gz http://xxx:xx/file/dl/xxx(sha256)?dir=installPkg && tar -xzvf xxx_x64.tar.gz && chmod +x ./*_install/install

    发现有机器执行 curl -o xxx_x64.tar.gz http://xxx:xx/file/dl/xxx(sha256)?dir=installPkg && tar -xzvf xxx_x64.tar.gz 会乱码,还有一堆 xterm-256color 的输出,最后包并没有成功下载到 pkgs_tmp 下,ssh 客户端用的是 mobaxterm 换成 xshell 也是类似报错,试了 export TERM=xterm-256color 也不行,这个可能是为啥。。提前谢过。

    # echo $TERM
    xterm-256color
    # tput colors
    256

    相关截图请参考: https://imgur.com/a/rTaJXMG
    9 条回复    2023-09-27 15:23:57 +08:00
    NessajCN
        1
    NessajCN  
       2023-09-27 11:30:18 +08:00
    在出问题的机子上一步一步手敲命令看输出
    skiy
        2
    skiy  
       2023-09-27 11:32:07 +08:00
    网址带有参数的,如 ?xxx=xxx ,要用引号包裹一下。

    看起来没啥问题。
    一般情况下,我会加个 -L (防重定向)
    curl -L -o xxx.tar.gz "https://x.com/x.zip?sign=xxx"
    ohayoo
        3
    ohayoo  
       2023-09-27 11:34:25 +08:00
    把 url 用双引号引起来
    julyclyde
        4
    julyclyde  
       2023-09-27 13:53:03 +08:00
    单引号
    lander
        5
    lander  
    OP
       2023-09-27 14:19:12 +08:00
    @NessajCN 出问题就是 curl -o xxx_x64.tar.gz http://xxx:xx/file/dl/xxx(sha256)?dir=installPkg && tar -xzvf xxx_x64.tar.gz 这一步有问题的
    @skiy 加了引号也不行,而且只有部分机器才有问题。。
    NessajCN
        6
    NessajCN  
       2023-09-27 14:21:36 +08:00
    @lander 所以具体是前面的 curl 报错还是后面的 tar 报错?
    skiy
        7
    skiy  
       2023-09-27 14:25:30 +08:00 via iPhone
    @lander 同样的命令,别的机器可以?如果这样,我会先检测目标服务器是不是设置了白名单、防火墙,然后再从客户服务器 curl 该路径下一个没有密钥的文件。

    具体的没有执行的相关代码,不太了解…
    chzhx
        8
    chzhx  
       2023-09-27 14:39:51 +08:00
    没问题的机器 LANG 是啥,有问题的机器 export LANG=对应编码
    devopsdogdog
        9
    devopsdogdog  
       2023-09-27 15:23:57 +08:00
    locale 看看,确保所有变量都一致吧,我以前有个变量少改了 , 死活乱码
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1028 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 22:06 · PVG 06:06 · LAX 14:06 · JFK 17:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.