Node.js文件监视

监听文件发生的变化,如重命名、修改、删除之类。

/**
 * 文件监视
 */
const fs = require("fs");
const path = require("path");

var filePath = path.join(__dirname,"HelloWorld.txt");

//监视1:fs.watch()方法更高效,但其API在各个平台上并非完全一致,在某些情况下不可用。【推荐】
fs.watch(filePath,(eventType,fileName)=>{
    if(eventType == "rename")
    {
       console.log("文件重命名");
    }

    if(eventType == "change")
    {
        console.log("文件发生修改");
    }

    if(fileName)
    {
       console.log("文件名:",fileName);
    }else
    {
        console.log("文件名未提供!");
    }
});


//监视2 方法较慢且不太可靠,但它是跨平台的,因而在网络文件系统中更可靠。
//每隔1秒时间检测文件变化
fs.watchFile(filePath,{interval: 1000},(curr,prev)=>{
   console.log("文件最后修改时间:",curr.mtime," 当前文件大小:",curr.size);
   console.log("文件上一次修改时间:",prev.mtime,"之前文件大小:",prev.size);

   //停止监听
//    fs.unwatchFile(filePath);
});

【测试】运行脚本,手动修改HelloWorld.txt文件,你会发现控制台输出Log

总结:文件变化监控,在某些情况下,还是蛮实用的~ 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Data菌

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值