【问题标题】:Wget creates output file even when page does not exist即使页面不存在,Wget 也会创建输出文件
【发布时间】:2009-07-15 10:31:07
【问题描述】:

当出现 404 之类的错误时,是否可以阻止 Wget 生成输出文件。

当我跑步时

wget -O my.html @987654321@

http://sdfsdfdsf.sdfds 不存在,但 Wget 仍会创建 my.html


我正在制作一个 bash 脚本,并希望确保它在 wget 无法获取有效文件时停止。

【问题讨论】:

    标签: linux bash wget


    【解决方案1】:

    wget 对非 200 条回复返回非零响应(似乎)。

    此示例代码适用于我使用 GNU wget:

    #!/bin/sh
    
    wget -O my.html http://sdfsdfdsf.sdfds
    
    if [ "$?" -ne "0" ]; then
        echo "ERROR"
    fi
    

    这里是来自here 的关于$? 的更多信息。

    $?最后执行的命令的退出状态是 以十进制字符串形式给出。当一个命令 成功完成,返回退出状态 0(零),否则返回非零退出 状态。

    【讨论】:

    • 感谢您的回复。 "$?" 是什么意思?什么意思?
    • 我已经用更多关于 $? 的信息更新了我的答案。希望对您有所帮助。
    【解决方案2】:

    您也许可以使用 curl(1) 代替:

    curl -s -f -o my.html http://sdfsdfdsf.sdfds
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-21
      • 1970-01-01
      • 2013-05-04
      相关资源
      最近更新 更多