【问题标题】:FS Node Delete All Files Except One that Matches NameFS节点删除除名称匹配的文件外的所有文件
【发布时间】:2021-10-02 16:24:18
【问题描述】:

我需要删除目录中的所有文件,但我拥有的名称除外。比方说:

fs.unlink('./all except specialfile.txt', (err)) => {
    if (err) throw err;
    console.log('file deleted!');
}

【问题讨论】:

  • 您可能需要读取目录中的文件列表,然后一次删除一个,当然不包括您的特殊文件。

标签: node.js fs


【解决方案1】:

您必须获取目录中的所有文件,然后比较名称,如果文件名与您的文件不匹配,则删除该文件

const fs = require('fs');
const path = require('path');

fs.readdir('./', (err, files) => {
    if (err) {
        console.log(err);
    }

    files.forEach(file => {
        const fileDir = path.join('./', file);

        if (file !== 'specialfile.txt') {
            fs.unlinkSync(fileDir);
        }
    });
});

【讨论】:

    猜你喜欢
    • 2019-01-27
    • 1970-01-01
    • 2019-01-03
    • 1970-01-01
    • 2018-01-11
    • 1970-01-01
    • 1970-01-01
    • 2012-09-09
    • 1970-01-01
    相关资源
    最近更新 更多