Description
https://nodejs.org/api/fs.html
I'm reading this and it seems like Node documentation like to mix the terms "folder" and "directory" interchangeably.
I'm wondering, why is Node mixing these concepts, they are not the same thing.
https://nodejs.org/api/fs.html#fs_fs_mkdtemp_prefix_options_callback
Quote:
History
prefix
options |encoding Default: 'utf8'
callbackerr
folder
Creates a unique temporary directory.Generates six random characters to be appended behind a required prefix to create a unique temporary directory. Due to platform inconsistencies, avoid trailing X characters in prefix. Some platforms, notably the BSDs, can return more than six random characters, and replace trailing X characters in prefix with random characters.
The created folder path is passed as a string to the callback's second parameter.
The optional options argument can be a string specifying an encoding, or an object with an encoding property specifying the character encoding to use.
fs.mkdtemp(path.join(os.tmpdir(), 'foo-'), (err, folder) => {
if (err) throw err;
console.log(folder);
// Prints: /tmp/foo-itXde2 or C:\Users...\AppData\Local\Temp\foo-itXde2
});
The fs.mkdtemp() method will append the six randomly selected characters directly to the prefix string. For instance, given a directory /tmp, if the intention is to create a temporary directory within /tmp, the prefix must end with a trailing platform-specific path separator (require('path').sep).// The parent directory for the new temporary directory
const tmpDir = os.tmpdir();// This method is INCORRECT:
fs.mkdtemp(tmpDir, (err, folder) => {
if (err) throw err;
console.log(folder);
// Will print something similar to/tmpabc123
.
// A new temporary directory is created at the file system root
// rather than within the /tmp directory.
});// This method is CORRECT:
const { sep } = require('path');
fs.mkdtemp(${tmpDir}${sep}
, (err, folder) => {
if (err) throw err;
console.log(folder);
// Will print something similar to/tmp/abc123
.
// A new temporary directory is created within
// the /tmp directory.
});