Node.js中如何使用chokidar监视文件变化并执行命令

作者:佚名 上传时间:2023-05-20 运行软件:无 软件版本:Node.js v14.17.1 版权申诉

本示例代码演示了如何使用chokidar监视指定文件夹中的文件变化,并在变化发生时执行指定的命令。使用了node.js的child_process模块来执行命令。

const chokidar = require('chokidar');
const { spawn } = require('child_process');

//需要监视的文件夹
const watchDir = './data';
//监视间隔时间
const watchInterval = 3000;
//需要执行的命令
const command = 'npm run build';

const watcher = chokidar.watch(watchDir, {
  ignored: /(^|[\/\\])\../, // ignore dotfiles
  persistent: true,
});

// All events will be called with `path` argument
watcher
  .on('add', (path) => {
    console.log(`File ${path} has been added`);
    executeCommand();
  })
  .on('change', (path) => {
    console.log(`File ${path} has been changed`);
    executeCommand();
  })
  .on('unlink', (path) => {
    console.log(`File ${path} has been removed`);
    executeCommand();
  })
  .on('error', (error) => {
    console.log(`Watcher error: ${error}`);
  });

//执行命令的函数
function executeCommand() {
  const parts = command.split(' ');
  const cmd = parts.shift();
  const args = parts;

  const spawnCmd = spawn(cmd, args, { stdio: 'inherit' });

  spawnCmd.on('close', (code) => {
    console.log(`child process exited with code ${code}`);
  });
}

免责申明:文章和图片全部来源于公开网络,如有侵权,请通知删除 server@dude6.com

用户评论
相关推荐
Node.js使chokidar
本示例代码演示了如何使用chokidar监视指定文件夹中的文件变化,并在变化发生时执行指定的命令。使用了node.js的child_process模块来执行命令。 const chokidar =
Node.js v14.17.1
2023-05-20 03:52
node.js如何监视文件变化
fs.FSWatcher fs.FSWatcher类 继承了 EventEmitter,用于监视文件变化,调用 fs.watch 后返回一个 fs.FSWatcher 实例,每当指定监视的文件被修改时
PDF
57KB
2020-12-23 00:23
使Node.js相关操作
本示例代码演示了如何使用Node.js对指定的文件夹进行监听,一旦其中的文件发生变化,就会执行相应的操作。这是一种常见的文件监控和同步处理的实现方式。const fs = require('fs')
Node.js v14.16.0
Visual Studio Code
2023-03-18 04:21
使Node.js
本示例代码演示如何使用Node.js实现监视文件夹中的文件变化并进行相应的操作,比如文件增删改等操作。const fs = require('fs');const path = require('
Node.js v14.17.1
Node.js
2023-03-17 12:53
在UNIX系统使find查找
本示例介绍如何在UNIX系统中使用find命令查找指定文件或文件夹,并执行相应的命令。 find /path/to/search -name "*.txt" -exec cp {
UNIX/Linux操作系统
UNIX/Linux操作系统
2023-04-28 16:26
如何使用Go语言实现远程执行命令
远程执行命令最常用的方法就是利用SSH协议,将命令发送到远程机器上执行,并获取返回结果。本文将介绍如何使用Go语言实现远程执行命令。下面一起来看看。
PDF
49KB
2020-09-21 14:05
执行jar文件以及执行命令
可执行jar包. 博文链接:https://taiyuan.iteye.com/blog/37494
RAR
0B
2019-03-04 01:16
执行jar文件.以及执行命令
可执行jar包.博文链接:https://taiyuan.iteye.com/blog/37494
RAR
0B
2020-04-05 06:46
typescript例子如何使用node.js
typescript例子-如何使用node.js
RAR
0B
2019-09-23 13:08
系统执行命令
使用指令运行系统提示,比如打开控制面板,资源管理器等
txt
0B
2019-01-14 12:55