欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

/usr/bin/curl -o "./office2021 for mac.zip" "http://aaa.bbb.com/util/software/office2021 for mac.zip" curl: (3) URL rejected: Malformed input to a URL function AG chatgpt 有大用

你的 curl 命令报错是因为 URL 中包含空格("office2021 for mac.zip"),而空格在 URL 中是非法字符,必须转义成 %20 或替换成 + 才有效。

修正方法

在 URL 中将空格替换为 %20(推荐)或 +

方法 1:使用 %20 转义空格

sh
/usr/bin/curl -o "./office2021 for mac.zip" "http://aaa.bbbb.com/util/software/office2021%20for%20mac.zip"

方法 2:使用 + 代替空格(某些服务器可能不支持)

sh
/usr/bin/curl -o "./office2021 for mac.zip" "http://aaaa.bbbb.com/util/software/office2021+for+mac.zip"

其他可能的问题

  1. 服务器文件不存在

  • 如果该文件已经被删除或 URL 拼写错误,仍然会报错。建议检查服务器是否能正常访问该文件。

  • 需要身份认证

    • 如果是公司内网,可能需要登录或其他认证方式,可以尝试在 curl 里加 -u 用户名:密码(如:-u user:pass)。

  • 建议去掉文件名空格(长远解决方案)

    • 有空格的文件名容易导致各种问题,建议改成 office2021_for_mac.zip 或 office2021-mac.zip 再重新上传到服务器。

    测试 URL 是否有效

    用浏览器直接访问以下地址,看看是否能下载:
    http://aaaa.bbbb.com/util/software/office2021%20for%20mac.zip

    如果仍然不行,可能是文件被删除、权限问题或服务器限制。


    普通分类: