最近在研究Linux服务器的时候倒腾了下crontab定时器,写个博客备忘
1、前期准备:
在这里Linux服务器默认大家都已经成功部署安装node
2、文件的创建
在home里面创建node目录并创建index.js和test.txt文件
cd /home sudo mkdir node sudo touch index.js #JS脚本 sudo touch test.txt #JS操作的文件
js脚本:
sudo vim /home/node/index.js
这里我们就简单的做一个文件的读写操作,代码如下 :
const fs = require('fs'); let str = fs.readFileSync('/home/node/test.txt', 'utf8'); let arr = str != ''?JSON.parse(str):[]; arr.push({"time":new Date().getTime(),'num':arr.length + 1}); fs.writeFileSync('/home/node/test.txt',JSON.stringify(arr));
进入到脚本目录执行node index.js 查看脚本是否能正常执行
crontab设置
sudo crontab -e
打开编辑器和vim编辑一样输入如下代码,保存退出
*/1 * * * * sudo /bin/node /home/node/index.js
注意:这里/bin/node是我的node的全路径 /home/node/index.js 是我的脚本所在的全路径,可以手动执行 sudo /bin/node /home/node/index.js命令检查脚本是否能正常执行
定时器设置完毕,可以使用 sudo cat /home/node/test.txt来查看文件内数据是否被JS写入了