From: gap579137 <30596626+gap579137@users.noreply.github.com> Date: Tue, 5 Nov 2024 03:42:09 +0000 (-0600) Subject: Update update-number-of-domains.js X-Git-Tag: aggregated-20250518~18 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ec1d0920ac925da0b255d0571feea4ddd9160d0b;p=thirdparty%2Fblocklistproject%2Flists.git Update update-number-of-domains.js --- diff --git a/scripts/update-number-of-domains.js b/scripts/update-number-of-domains.js index fcb3e31..584b0e6 100644 --- a/scripts/update-number-of-domains.js +++ b/scripts/update-number-of-domains.js @@ -3,31 +3,42 @@ const path = require("node:path"); (async () => { try { + // Define the base directory containing .txt files const directoryPath = path.join(__dirname, ".."); + + // Retrieve all .txt files from the directory const files = (await fs.readdir(directoryPath)).filter((file) => - file.endsWith(".txt"), + file.endsWith(".txt") ); + // Process each file concurrently await Promise.all( files.map(async (file) => { const filePath = path.join(directoryPath, file); const fileContents = await fs.readFile(filePath, "utf8"); + // Extract unique domains starting with "0.0.0.0" const existingDomains = new Set( fileContents .split("\n") .filter((line) => line.startsWith("0.0.0.0 ")) - .map((line) => line.replace("0.0.0.0 ", "")), + .map((line) => line.slice(8)) // Extract domain after "0.0.0.0 " ); + // Update the total number of network filters const updatedContents = fileContents.replace( - /^# Total number of network filters: ?(\d*)$/gm, - `# Total number of network filters: ${existingDomains.size}`, + /^# Total number of network filters: ?\d*$/m, + `# Total number of network filters: ${existingDomains.size}` ); + // Write the updated content back to the file await fs.writeFile(filePath, updatedContents, "utf8"); - }), + + console.log(`Updated domain count for: ${file}`); + }) ); + + console.log("All files processed successfully."); } catch (error) { console.error("Error processing files:", error); }