#!/bin/bash
exec 200>/var/lock/scraper || exit 1
flock -n 200 || exit 1
cd /home/ubuntu/web_scraper
/home/ubuntu/.nvm/versions/node/v13.12.0/bin/node mongo/scraper.js > logs/scraper.log
flock -u 200
基本上:
node scraper.js > scraper.log
发生错误后不会释放终端/cmd:因此它都会失败并且永远不会解锁。如何流式传输到日志文件和当程序失败时仍然退出?
答案1
问题是节点。当您抛出错误时,节点不会退出脚本。