You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Cron任务未自动运行求助:显卡销量采集脚本手动可执行

问题排查与修正方案

一、Cron任务的核心错误

  • 路径拼写错误:/user/bin/bash是错误路径,正确应为/usr/bin/bash(少了字母s)
  • 语法格式错误:Cron的月份字段用nov-dec不兼容标准解析逻辑,建议改用数字范围11-12;另外你写的脚本路径/sells_Cards/sold.sh是根目录路径,实际脚本在/home/ubuntu/sells_Cards/sold.sh,必须写完整绝对路径。

二、采集脚本的问题

  • 输出文件路径错误:脚本里的sales.txt是相对路径,Cron运行时默认工作目录是用户主目录(/home/ubuntu),执行后会把文件写到主目录,而非你预期的sells_Cards文件夹下,需要改为绝对路径。
  • Curl依赖不稳定:curl=$(which curl)依赖Cron的PATH环境变量,而Cron默认PATH范围很窄,可能找不到curl,建议直接用curl的绝对路径(手动执行which curl可获取,比如/usr/bin/curl)。

三、修正后的内容

修正后的采集脚本(sold.sh)

#!/bin/bash
# 直接使用curl绝对路径,避免环境变量问题
CURL="/usr/bin/curl"
RTX3060="http://0.0.0.0:5000/rtx3060"
RTX3070="http://0.0.0.0:5000/rtx3070"
RTX3080="http://0.0.0.0:5000/rtx3080"
RTX3090="http://0.0.0.0:5000/rtx3090"
RX6700="http://0.0.0.0:5000/rx6700"
# 指定输出文件的绝对路径
OUTPUT_FILE="/home/ubuntu/sells_Cards/sales.txt"

function output_(){
  $CURL $RTX3060 $RTX3070 $RTX3080 $RTX3090 $RX6700 > $OUTPUT_FILE
}
output_

修正后的Cron任务(执行crontab -e修改)

# 11-12月每分钟执行脚本
*/1 * * 11-12 * /usr/bin/bash /home/ubuntu/sells_Cards/sold.sh

四、额外验证步骤

  • 给脚本添加执行权限:执行chmod +x /home/ubuntu/sells_Cards/sold.sh
  • 查看Cron执行日志:Ubuntu下执行grep CRON /var/log/syslog,能看到任务是否触发、是否有错误提示。

内容的提问来源于stack exchange,提问作者Raouf Yahiaoui

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 21:30:53