0

我想删除退出程序时在目录中生成的所有 .csv 文件,以及所有名称为 less 的文件,less 没有扩展名,它只是出现在目录中的一个名为 less 的文件。我的程序可以删除所有 .csv 文件,但我无法删除出现的 less 文件。这是我尝试过的:

var fs   = require("fs"),
    path = require("path");

function getUserHome() {
  return process.env[(process.platform==='win32')?'USERPROFILE':'HOME']+path.sep;
}

process.on('exit', function() {
    fs.readdirSync(getUserHome() + ".ssh/project").forEach(function(fileName) {
        console.log(fileName);
        if (path.extname(fileName) === ".csv") {
            fs.unlinkSync(fileName);
        }
    });
});

这将删除所有 .csv 文件。

我希望它也删除较少的文件,所以我尝试了

var fs   = require("fs"),
    path = require("path");

function getUserHome() {
  return process.env[(process.platform==='win32')?'USERPROFILE':'HOME']+path.sep;
}

process.on('exit', function() {
    fs.readdirSync(getUserHome() + ".ssh/project").forEach(function(fileName) {
        console.log(fileName);
        if (path.extname(fileName) === ".csv" || path.extname(fileName) === "less" ) {
            fs.unlinkSync(fileName);
        }
    });
});

那没有用,所以我也尝试了

var fs   = require("fs"),
    path = require("path");

function getUserHome() {
  return process.env[(process.platform==='win32')?'USERPROFILE':'HOME']+path.sep;
}

process.on('exit', function() {
    fs.readdirSync(getUserHome() + ".ssh/project").forEach(function(fileName) {
        console.log(fileName);
        if (path.extname(fileName) === ".csv") {
            fs.unlinkSync(fileName);
        }
         if (path.extname(fileName) === "less") {
            fs.unlinkSync(fileName);
        }
    });
});

这也不起作用,在这两种情况下,他们都只是删除了所有 .csv 文件,但我也想删除更少的文件

4

1 回答 1

0

看起来你忘了添加dirpathfilename. .当您使用文件名检查文件时,您也忘记添加less

这应该工作

var fs   = require("fs"),
    path = require("path");

function getUserHome() {
  return process.env[(process.platform==='win32')?'USERPROFILE':'HOME']+path.sep;
}

process.on('exit', function() {
    fs.readdirSync(getUserHome() + ".ssh/project").forEach(function(fileName) {

        console.log(fileName);
        if (path.extname(fileName) === ".csv" || fileName === "less" ) {

            // prepend path to file name
            fs.unlinkSync(getUserHome() + ".ssh/project/" + fileName);
        }
    });
});
于 2013-10-03T13:47:20.783 回答