我尝试在ss桶中上传它们之后使用fs.unlink删除一些本地文件,它会删除文件,但也不会抛出这样的文件或目录错误 .
我在async queue的 drain callback
中运行此命令,基于异步文档,当队列中的最后一项返回时调用drain,但在我的情况下它似乎运行了两次,因为当我运行时我可以看到我的控制台日志 console.log('Completed upload in', delta, 'seconds')
两次,一旦它在0.001秒内完成,第二次在所有文件上传到s3存储桶后花费将近250秒,而在这里我也得到错误,我的unlink说没有这样的文件或目录错误 . :
const q = async.queue((task, callback) => {
s3.upload(params, options, callback)
}
q.drain = function () { // It seems this method run twice!
var delta = (new Date() - startTime) / 1000
console.log('Completed upload in', delta, 'seconds')
fs.unlink(`./${task.src}`, (err) => {
if (err) console.log("ERROR", err)
console.log(`successfully deleted ${task.src}`)
})
return true
}
q.push(fileNamesReformat)