watch les appels system de nodejs

22/05/2023
import { glob } from 'glob'; 

// on crée des fichiers
// mkdir /tmp;
// mkdir /tmp/a;
// mkdir /tmp/a/3;
// mkdir /tmp/a/2;
// mkdir /tmp/a/1;
// mkdir /tmp/a/1/4;
//
// on lance le script avec cet ignore :
//   '**/1/**'
//
// on lance avec tracng des appels fs
// node --trace-events-enabled --trace-event-categories v8,node,node.fs.async /root/docker/check/glob.try.js
//
// puis on analyse la trace
// cat node_trace.1.log | jq| grep tmp
// "path": "/tmp"
// "path": "/tmp/a"
// "path": "/tmp/a/3"
// "path": "/tmp/a/2"
// 
// on constate ces deux lignes là en plus si on met pas de parametre ignore
// "path": "/tmp/a/1"
// "path": "/tmp/a/1/4"
//
// donc preuve que ça n'ouvre meme pas le dossier docn que c'est performant

const results = await glob('/tmp/a/**', {
    ignore: [
        '**/1/**'
    ],
});

console.log(results.sort());

Raccourcis