Estoy tratando de eliminar directorios, así que escribí un código
const path= require("path"), const fs= require("fs"); let dir= path.join(process.cwd(),"tested folders"); if(fs.existsSync(dir)){ fs.rmSync(dir, { recursive: true, force: true }); } y me está ayudando a eliminar los directorios deseados, pero ahora estoy tratando de eliminar varios directorios porque quiero eliminar todos los archivos que comienzan con _testFolder_ ya que hay varios archivos con este prefijo
así que hice una matriz y pasé el valor así
let dir=[path.join(process.cwd(),"tested folders"),path.join(process.cwd(),"_testFolder_*")] if(fs.existsSync(dir)){ fs.rmSync(dir, { recursive: true, force: true }); } e intento eliminar varias carpetas, pero no me permite eliminar ni siquiera mi primera carpeta. ¿Cómo puedo eliminar varias carpetas que comienzan con este prefijo _testFolder_ y la tested folder también?
aquí está el código, puedes borrar todas las carpetas
NOTA: - aquí el comando es para Linux para otro sistema operativo, puede reemplazarlo
const { exec } = require('child_process'); const path = require("path") let dir = [path.join(process.cwd(), "tested folders"), path.join(process.cwd(), "_testFolder_*")] // linux command rm -rf exec(`rm -rf "${dir.join('" "')}"`);** elegir un proceso secundario porque reduce el código y la velocidad
usando nodo js
let fs = require('fs') // your dir array should be (simple regex) let regex = [/tested folders/, /_testFolder_/] let scanDir = process.cwd() fs.readdirSync(scanDir) .filter(f => regex.filter(r => r.test(f)).length) .map(f => fs.rmdirSync(scanDir + "/" + f))