美文网首页
常用的JavaScript脚本,用于执行日常任务

常用的JavaScript脚本,用于执行日常任务

作者: jia林 | 来源:发表于2025-06-05 21:04 被阅读0次
1.批量重命名文件
const fs = require('fs');
const path = require('path');

function batchRename(folder, prefix) {
  fs.readdir(folder, (err, files) => {
    if (err) throw err;
    files.forEach((file, index) => {
      const ext = path.extname(file);
      const oldPath = path.join(folder, file);
      const newPath = path.join(folder, `${prefix}_${String(index).padStart(3, '0')}${ext}`);
      fs.rename(oldPath, newPath, (err) => {
        if (err) throw err;
        console.log(`Renamed ${file} to ${path.basename(newPath)}`);
      });
    });
  });
}
batchRename('/path/to/files', 'image');
2.将多个 PDF 合并为一个
const fs = require('fs');
const PDFMerger = require('pdf-merger-js');

async function mergePDFs(pdfFolder, outputPDF) {
  const merger = new PDFMerger();
  const files = fs.readdirSync(pdfFolder).filter((file) => file.endsWith('.pdf'));
  for (const file of files) {
    await merger.add(path.join(pdfFolder, file));
  }
  await merger.save(outputPDF);
  console.log(`Merged PDFs into ${outputPDF}`);
}
mergePDFs('/path/to/pdfs', 'merged_document.pdf');
3.自动清理旧文件
const fs = require('fs');
const path = require('path');

function cleanOldFiles(folder, days) {
  const now = Date.now();
  const cutoff = now - days * 24 * 60 * 60 * 1000;
  fs.readdir(folder, (err, files) => {
    if (err) throw err;
    files.forEach((file) => {
      const filePath = path.join(folder, file);
      fs.stat(filePath, (err, stat) => {
        if (err) throw err;
        if (stat.mtime.getTime() < cutoff) {
          fs.unlink(filePath, (err) => {
            if (err) throw err;
            console.log(`Deleted ${file}`);
          });
        }
      });
    });
  });
}
cleanOldFiles('/path/to/old/files', 30);
4. 将图像转换为 PDF
const fs = require('fs');
const PDFDocument = require('pdfkit');

function imagesToPDF(imageFolder, outputPDF) {
  const doc = new PDFDocument();
  const writeStream = fs.createWriteStream(outputPDF);
  doc.pipe(writeStream);
  fs.readdir(imageFolder, (err, files) => {
    if (err) throw err;
    files
      .filter((file) => /\.(jpg|jpeg|png)$/i.test(file))
      .forEach((file, index) => {
        const imagePath = `${imageFolder}/${file}`;
        if (index !== 0) doc.addPage();
        doc.image(imagePath, {
          fit: [500, 700],
          align: 'center',
          valign: 'center',
        });
      });
    doc.end();
    writeStream.on('finish', () => {
      console.log(`PDF created: ${outputPDF}`);
    });
  });
}
imagesToPDF('/path/to/images', 'output.pdf');
5. 自动文件备份
const fs = require('fs');
const path = require('path');

function backupFiles(sourceFolder, backupFolder) {
  fs.readdir(sourceFolder, (err, files) => {
    if (err) throw err;
    files.forEach((file) => {
      const sourcePath = path.join(sourceFolder, file);
      const backupPath = path.join(backupFolder, file);
      fs.copyFile(sourcePath, backupPath, (err) => {
        if (err) throw err;
        console.log(`Backed up ${file}`);
      });
    });
  });
}
const source = '/path/to/important/files';
const backup = '/path/to/backup/folder';
backupFiles(source, backup);

相关文章

  • JavaScript

    JavaScript是一种属于网络的脚本语言,广泛应用于Web开发,常用来为网页添加各式各样的动态功能。其日常用途...

  • < script>、字符实体、&nbsp、U

    ** < script> **用于定义客户端脚本,比如 JavaScript,其最常用于图片操作、表单验证以及内容...

  • JavaScript中的for循环

    JavaScript 语言中的 for 循环用于多次执行代码块,它是 JavaScript 中最常用的一个循环工具...

  • JavaScript中的for循环

    JavaScript 语言中的 for 循环用于多次执行代码块,它是 JavaScript 中最常用的一个循环工具...

  • AngularJS基础(下)

    1.AngularJS API AngularJS 全局 API 用于执行常见任务的 JavaScript 函数集...

  • JavaWeb Filter

    过滤器,用于执行过滤任务的对象,针对指定请求响应执行,通过doFilter()方法进行过滤。常用于验证过滤、日志记...

  • Javascript不得不说的基础知识

    JavaScript (JS) 是一种高级编程语言,为通常用于客户端(client-side)的网页动态脚本。因为...

  • Unity3D笔记(十四)关于unity的函数生命周期

    一. 常用函数 (按照执行顺序排列) Awake:游戏运行时执行,只执行一次(不管脚本是否启用都会执行)。主要用于...

  • JS中的setTimeout和setInterval

    基本要点: 两者都用于计时 两者都是异步任务 JavaScript中首先执行主线程任务,其次执行异步任务 两者中的...

  • 熟悉JavaScript

    JavaScript是用于编写网页行为的轻量级脚本语言脚本语言的不同之处在于浏览器会在读取代码时,逐行地执行脚本代...

网友评论

      本文标题:常用的JavaScript脚本,用于执行日常任务

      本文链接:https://www.haomeiwen.com/subject/getvwjtx.html