node.js 파일 제거
node.js로 파일을 어떻게 삭제합니까?
http://nodejs.org/api/fs.html#fs_fs_rename_oldpath_newpath_callback
제거 명령이 보이지 않습니까?
나는 당신이 사용하고 싶다고 생각합니다 fs.unlink
.
자세한 내용 fs
은 여기를 참조하십시오 .
fs.unlink(path, callback)
비동기 unlink (2) 또는 fs.unlinkSync(path)
동기 unlink (2)를 호출 할 수 있습니다 . 제거하려는 파일 경로는
어디에 있습니까 path
?
예를 들어 디렉토리 discovery.docx
에서 파일 을 제거하려고합니다 c:/book
. 그래서 내 파일 경로는 c:/book/discovery.docx
입니다. 해당 파일을 제거하는 코드는
var fs = require('fs');
var filePath = 'c:/book/discovery.docx';
fs.unlinkSync(filePath);
존재 여부를 삭제하기 전에 파일을 확인하려는 경우. 따라서 대신 fs.stat 또는 fs.statSync ( Synchronous )를 사용하십시오 fs.exists
. 최신 Node.js를 따라하기 때문에 문서 , fs.exists
지금은 사용되지 .
예를 들면 다음과 같습니다.
fs.stat('./server/upload/my.csv', function (err, stats) {
console.log(stats);//here we got all information of file in stats variable
if (err) {
return console.error(err);
}
fs.unlink('./server/upload/my.csv',function(err){
if(err) return console.log(err);
console.log('file deleted successfully');
});
});
이 목적을 위해 만든 작은 조각이 있습니다.
var fs = require('fs');
var gutil = require('gulp-util');
fs.exists('./www/index.html', function(exists) {
if(exists) {
//Show in green
console.log(gutil.colors.green('File exists. Deleting now ...'));
fs.unlink('./www/index.html');
} else {
//Show in red
console.log(gutil.colors.red('File not found, so not deleting.'));
}
});
파일이 있는지 여부를 확인해야한다고 생각하지 않습니다. 파일을 확인하십시오 fs.unlink
.
fs.unlink('fileToBeRemoved', function(err) {
if(err && err.code == 'ENOENT') {
// file doens't exist
console.info("File doesn't exist, won't remove it.");
} else if (err) {
// other errors, e.g. maybe we don't have enough permission
console.error("Error occurred while trying to remove file");
} else {
console.info(`removed`);
}
});
허용되는 답변으로 fs.unlink
파일을 삭제 하는 데 사용하십시오.
그러나 Node.js 문서 에 따르면
사용
fs.stat()
호출하기 전에 파일의 존재 여부를 확인하는fs.open()
,fs.readFile()
또는fs.writeFile()
사용하지 않는 것이 좋습니다. 대신, 사용자 코드는 파일을 직접 열고 / 읽고 / 쓰고 파일을 사용할 수없는 경우 발생한 오류를 처리해야합니다.나중에 파일을 조작하지 않고 파일이 존재하는지 확인하려면
fs.access()
권장됩니다.
파일을 삭제할 수 있는지 확인하려면 fs.access
대신 사용
fs.access('/etc/passwd', fs.constants.R_OK | fs.constants.W_OK, (err) => {
console.log(err ? 'no access!' : 'can read/write');
});
여기 내 코드 아래에서 잘 작동합니다.
const fs = require('fs');
fs.unlink(__dirname+ '/test.txt', function (err) {
if (err) {
console.error(err);
}
console.log('File has been Deleted');
});
del 모듈을 사용 하여 현재 디렉토리에서 하나 이상의 파일을 제거 할 수 있습니다 . 좋은 점은 현재 작업 디렉토리 이상을 삭제하지 않도록 보호한다는 것입니다.
const del = require('del');
del(['<your pathere here>/*']).then( (paths: any) => {
console.log('Deleted files and folders:\n', paths.join('\n'));
});
fs.unlink (path, callback) 함수를 사용할 수 있습니다 . 다음은 "error-back"패턴을 가진 함수 래퍼의 예입니다.
// Dependencies.
const fs = require('fs');
// Delete a file.
const deleteFile = (filePath, callback) => {
// Unlink the file.
fs.unlink(filePath, (error) => {
if (!error) {
callback(false);
} else {
callback('Error deleting the file');
}
})
};
filename의 regexp와 일치하는 디렉토리에서 파일을 제거하십시오. fs.unlink 만 사용-파일 제거, fs.readdir-디렉토리에서 모든 파일 가져 오기
var fs = require('fs');
const path = '/path_to_files/filename.anyextension';
const removeFile = (fileName) => {
fs.unlink(`${path}${fileName}`, function(error) {
if (error) {
throw error;
}
console.log('Deleted filename', fileName);
})
}
const reg = /^[a-zA-Z]+_[0-9]+(\s[2-4])+\./
fs.readdir(path, function(err, items) {
for (var i=0; i<items.length; i++) {
console.log(items[i], ' ', reg.test(items[i]))
if (reg.test(items[i])) {
console.log(items[i])
removeFile(items[i])
}
}
});
fs-extra
제거 방법을 제공합니다.
const fs = require('fs-extra')
fs.remove('/tmp/myfile')
.then(() => {
console.log('success!')
})
.catch(err => {
console.error(err)
})
https://github.com/jprichardson/node-fs-extra/blob/master/docs/remove.md
사용 NPM 모듈 FS-추가 FS 당신에게 모든 것을 제공, 플러스 모든 Promisified입니다. 보너스로 fs.remove () 메소드를 사용할 수 있습니다.
fs를 사용하면 매우 쉽습니다.
var fs = require('fs');
try{
var sourceUrls = "/sampleFolder/sampleFile.txt";
fs.unlinkSync(sourceUrls);
}catch(err){
console.log(err);
}
폴더에서 파일 / 이미지를 삭제할 수있는 코드입니다.
var fs = require('fs');
Gallery.findById({ _id: req.params.id},function(err,data){
if (err) throw err;
fs.unlink('public/gallery/'+data.image_name);
});
참고 URL : https://stackoverflow.com/questions/5315138/node-js-remove-file
'development' 카테고리의 다른 글
JavaScript eval 함수를 사용하는 것이 좋지 않은 이유는 무엇입니까? (0) | 2020.02.11 |
---|---|
파이썬 try-else (0) | 2020.02.11 |
Multimarkdown에서 명명 된 앵커에 연결하는 방법은 무엇입니까? (0) | 2020.02.11 |
String.equals vs == (0) | 2020.02.11 |
텍스트에서 공백을 모두 제거하십시오 (0) | 2020.02.11 |