【初心者向け】Node.jsでディレクトリを作成する方法3選
Node.jsでディレクトリが存在しない場合は作成する方法
fs.mkdir()
は、ディレクトリを作成する最も基本的な方法です。以下のコードのように、dir
という名前のディレクトリを作成します。
const fs = require('fs');
fs.mkdir('dir', (err) => {
if (err) {
console.error(err);
return;
}
console.log('ディレクトリを作成しました');
});
fs.mkdir()
は、ディレクトリが存在する場合はエラーが発生します。
const fs = require('fs');
try {
fs.mkdirSync('dir');
console.log('ディレクトリを作成しました');
} catch (err) {
console.error(err);
}
fs.exists() と fs.mkdir() を組み合わせて使う
fs.exists()
を使ってディレクトリが存在するかどうかを確認してから、fs.mkdir()
を使ってディレクトリを作成することができます。以下のコードのように、dir
という名前のディレクトリが存在しない場合は作成します。
const fs = require('fs');
fs.exists('dir', (exists) => {
if (!exists) {
fs.mkdir('dir', (err) => {
if (err) {
console.error(err);
return;
}
console.log('ディレクトリを作成しました');
});
} else {
console.log('ディレクトリはすでに存在します');
}
});
mkdirp
モジュールは、ディレクトリ階層を再帰的に作成することができます。以下のコードのように、dir/subdir
という名前のディレクトリ階層を作成します。
const mkdirp = require('mkdirp');
mkdirp('dir/subdir', (err) => {
if (err) {
console.error(err);
return;
}
console.log('ディレクトリ階層を作成しました');
});
fs-extra
モジュールは、fs
モジュールの機能を拡張したモジュールです。fs-extra
モジュールの mkdirs()
メソッドを使って、ディレクトリ階層を再帰的に作成することができます。以下のコードのように、dir/subdir
という名前のディレクトリ階層を作成します。
const fs = require('fs-extra');
fs.mkdirs('dir/subdir', (err) => {
if (err) {
console.error(err);
return;
}
console.log('ディレクトリ階層を作成しました');
});
これらの方法の中から、自分の目的に合った方法を選択して使用してください。
const fs = require('fs');
// ディレクトリを作成
fs.mkdir('dir', (err) => {
if (err) {
console.error(err);
return;
}
console.log('ディレクトリを作成しました');
});
このコードを実行すると、dir
という名前のディレクトリが作成されます。
- ディレクトリを作成する前に、ディレクトリが存在するかどうかを確認したい場合は、
fs.exists()
メソッドを使用できます。 - ディレクトリ階層を再帰的に作成したい場合は、
mkdirp
モジュールまたはfs-extra
モジュールのmkdirs()
メソッドを使用できます。
ディレクトリを作成するその他の方法
child_process
モジュールを使って、mkdir
コマンドを実行することができます。以下のコードのように、dir
という名前のディレクトリを作成します。
const { exec } = require('child_process');
exec('mkdir dir', (err, stdout, stderr) => {
if (err) {
console.error(err);
return;
}
console.log('ディレクトリを作成しました');
});
const shell = require('shelljs');
shell.mkdir('dir');
console.log('ディレクトリを作成しました');
これらの方法はいずれも、上記で紹介した方法よりも複雑です。ただし、より柔軟な方法でディレクトリを作成することができます。
Node.jsでディレクトリを作成するには、いくつかの方法があります。自分の目的に合った方法を選択して使用してください。
node.js