【问题标题】:wget and curl much slower when invoked from bash script从 bash 脚本调用 wget 和 curl 时要慢得多
【发布时间】:2011-01-22 17:41:36
【问题描述】:

我正在编写一个小自动化脚本,我需要下载一个文件。当我直接从 bash 使用 curl 或 wget 时,平均 dl 速度约为 3MB/s。但是,当我从 bash 脚本调用它时,下载速度下降到 300kB/s。 curl 和 wget 都会发生这种情况。

我在 OS X 上,使用 bash 3.2.48、wget 1.12 和 curl 7.19.7

编辑:脚本 - 到目前为止只是这个 sn-p。我刚试了一下,发现这个问题...

#!/bin/bash
CURVER=1.0
VERSION=1.2


if [ ${VERSION//\./} -gt ${CURVER//\./} ]; then
    echo "There is a new version available!"

    wget -O /tmp/dl.dmg $DOWNLOAD

fi

【问题讨论】:

  • 向我们展示脚本 - 没有它就无法分辨!
  • 我假设你在别处设置了变量$DOWNLOAD。无需在大括号扩展中转义点,也不需要最后的斜线。我在您的 sn-p 中看不到任何会导致减速的内容。 niceionice 或类似的东西在某种程度上有效吗?
  • 除了$DOWNLOAD 的未知内容外,我看不出有什么奇怪的。你是如何运行你的脚本的?例如,脚本中的任何环境变量(例如http_proxy)是否可能不同?
  • 是的,$DOWNLOAD 通常是设置的,只是忘记复制了...我没有使用任何代理,也不是很好。

标签: performance bash curl download wget


【解决方案1】:

非常奇怪!

您执行脚本的用户是否与您从命令行尝试的用户相同?

也许该脚本是由具有某种类型的减缓连接策略的用户运行的?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-05
    • 2019-11-17
    • 2013-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-08
    相关资源
    最近更新 更多