首页 > 解决方案 > Npm run 在 crontab (cronjob) 中不起作用

问题描述

我想使用 Makefile 和 shellscript 使用 nuxt 生成和渲染静态内容。

生成文件

deploy-content: ## Generate content using nuxt
       @echo $(/bin/bash -c cd /var/www/nuxt; npm run --prefix /var/www/nuxt generate)

渲染.sh

#!/bin/sh

# start generating content in background
make deploy-content > /dev/null 2>&1 &

crontab -e :):

# Midnight 2 am
0 2 * * *        cd /var/www/generate/ && make deploy-content > /dev/null 2>&1 &

还请考虑以下事项:

有人可以帮助我吗,Pleeeeeeeeeeease?可能是我错过了什么,没有意识到。:)

非常感谢,干杯!

标签: shellubuntunpmcronnuxt.js

解决方案


最简单的有效情况:

crontab

* * * * *        /usr/bin/make -C /var/www/generate/ > /tmp/log.txt

生成文件(/var/www/generate/Makefile)

deploy-content:
    /bin/bash -c "cd /var/www/nuxt/; npm ls"

输出应该在

cat /tmp/log.txt

推荐阅读