【问题标题】:How to write a cron job with wget如何使用 wget 编写 cron 作业
【发布时间】:2018-12-21 16:10:04
【问题描述】:

我正在尝试编写一个使用 wget 从 Web 服务器检索信息的 cron 作业。

更具体地说,我正在从美国国家海洋和大气管理局 (NOAA) 的国家数据浮标中心 (NDBC) 检索数据。这些数据对公众免费。

以下命令成功在我的目录中创建 .txt 文件:

wget https://www.ndbc.noaa.gov/data/realtime2/46237.spec

现在我正在尝试通过编写 cron 作业每 30 分钟自动执行一次此命令。我用vim写了如下代码:

0,30 * * * * wget https://www.ndbc.noaa.gov/data/realtime2/46237.spec

我还通过运行“crontab -l”验证了这个 cron 作业存在

有谁知道为什么没有正确执行?

附:我是编程新手,如果我滥用任何术语,请纠正我。谢谢

【问题讨论】:

    标签: cron wget


    【解决方案1】:

    可能有很多原因,但一般方法最好使用绝对路径并将wget 的输出强制重定向到特定文件。访问 https 时忽略认证检查也很好。你的 cron 会变成这样:

    0,30 * * * * /usr/bin/wget -O /tmp/my_result.file --no-check-certificate https://www.ndbc.noaa.gov/data/realtime2/46237.spec
    

    以上所有路径和文件名都是示例!

    但最好的做法是创建 shell 脚本(例如在您的主目录中)并通过 cron 运行此脚本

    【讨论】:

    • $ /usr/sbin/cron start cron: 无法打开或创建 /var/run/cron.pid: 权限被拒绝
    • 我已经更正了我的 cron,但仍然没有得到任何东西。我跑了“/usr/sbin/cron start”,输出见上面
    • @ConnorCantrell, cron 作为守护进程启动,通常不需要手动启动它,因为它是在操作系统启动时启动的。等待并检查日志。
    猜你喜欢
    • 2020-06-11
    • 2015-08-31
    • 1970-01-01
    • 2011-12-25
    • 1970-01-01
    • 2013-05-09
    • 1970-01-01
    • 1970-01-01
    • 2013-06-21
    相关资源
    最近更新 更多