LoginSignup
11
6

More than 5 years have passed since last update.

Node.jsで配下ファイルを含めフォルダを削除

Last updated at Posted at 2015-11-24

Node.jsでフォルダのみを削除したい場合、fs.rmdir(またはfs.rmdirSync)を使用する。

Node.js v0.4.12 Manual & Documentation」を見ると配下ファイルを含めてフォルダを削除する関数はなさそうだった(見逃してるだけかもしれません)。

なので、以下の3ステップで配下ファイルを含めてフォルダを削除する。

  1. fs.readdirSyncで該当のフォルダ内のファイル名を取得
  2. for in文 で削除したいフォルダにあるファイル(1で取得したものに削除するファルダパスを足したもの)を、fs.unlinkSyncを使用して削除
  3. 最後にrmdirSyncを使用して該当のフォルダを削除

※fs.unlinkはファイルを削除する場合に使用する関数
※Syncがつくものは同期的に処理される

removeDirectory.js
var fs  = require('fs');


// targetRemoveDirectoryPathに消したいディレクトリを指定
// まずは消したいフォルダの配下ファイルを削除
var targetRemoveFiles = fs.readdirSync(targetRemoveDirectoryPath);
for (var file in targetRemoveFiles) {
  fs.unlinkSync(targetRemoveDirectoryPath + targetRemoveFiles[file]);
}

// 消したいフォルダを削除
fs.rmdirSync(targetRmDirPath);

ただし、これだと配下のファイル、フォルダを含めて再帰的に削除できないので、コマンドでいうrm -rfを実現できる手段が分かる人がいたら教えて下さい。

11
6
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
6