我有一些代码可以从文件夹中选择一个随机文件,然后将其记录下来,完成记录后,我希望将其删除,但似乎无法删除。
随机选择文件的路径存储为变量。
const trash = require('trash');
var fs = require('fs'),
path = require('path'),
files_memes = fs.readdirSync('/Users/jackb/Desktop/pup/Pictures/reddit_sub_memes')
var filename = (random_file());
var imgPATH = path.join(__dirname, '/Users/jackb/Desktop/pup/Pictures/reddit_sub_memes/' + filename);
const del = require('del');
function random_file(){
var allFiles = (files_memes)
return allFiles[Math.floor(Math.random() * allFiles.length)];
}
console.log(filename);
console.log(imgPATH);
(async () => {
const deletedPaths = await del(['imagePATH']);
console.log('Deleted files and directories:\n', deletedPaths.join('\n'));
})();
我希望记录的文件被删除。
您可以将所有文件路径字符串放置在数组中,并在lodash中使用_.sample(),这有助于您从数组中选择随机值。
更改了这一行代码
const deletedPaths = await del(['imagePATH']);
到
const deletedPaths = await
del('/Users/jackb/Desktop/pup/Pictures/reddit_sub_memes/' + filename);