0

在这里,我将文件名放入 filename.txt,但我不知道如何与 filename.txt 中的现有文件进行比较

const yargs = require('yargs')
const fs = require('fs')
const command = process.argv[2]; // I am giving in terminal like nodejs app.js file1.txt//
var argv = fs.appendFile('filename.txt', command, (err) => {
    if (err) throw err;
    console.log('The files were updated!');
    console.log(argv)
});

文本文件中的内容将是文件名,我的问题是如何获取并与新文件名进行比较(它们是否匹配)

4

1 回答 1

0

使用 fs.readFile 读取文本文件,然后将 process.argv[2] 文本与每个文件名进行比较。你真的不需要为此使用 yargs 包。

const fs = require('fs')
const command = process.argv[2];

fs.readFile("./filename.txt", "utf8", function (error, dataStr) {
    if (error) {
        console.log(error);
    }

    data = dataStr.split("\n"); // presumes each 'filename' to check is on a new line

    if (data.indexOf(command) > -1) {
        console.log('It exists in the filename.txt file');
    } else {
        console.log('It doesnt exist in the filename.txt file');
    }

});

这假定您的“filename.txt”文件如下所示:

file1.txt
file2.txt
file3.txt
于 2019-12-28T05:28:16.547 回答