Skip to main content
promises.mkdtemp - node__fs.d.ts - Node documentation
function promises.mkdtemp

Usage in Deno

```typescript import { promises } from "node:node__fs.d.ts"; ```
mkdtemp(
prefix: string,
options?:
ObjectEncodingOptions
| BufferEncoding
| null
,
): Promise<string>
Creates a unique temporary directory. A unique directory name is generated by appending six random characters to the end of the provided `prefix`. 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 optional `options` argument can be a string specifying an encoding, or an object with an `encoding` property specifying the character encoding to use. ```js import { mkdtemp } from 'node:fs/promises'; import { join } from 'node:path'; import { tmpdir } from 'node:os'; try { await mkdtemp(join(tmpdir(), 'foo-')); } catch (err) { console.error(err); } ``` The `fsPromises.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 (`import { sep } from 'node:path'`).

Parameters

prefix: string
optional
options:
ObjectEncodingOptions
| BufferEncoding
| null

Return Type

Promise<string>
Fulfills with a string containing the file system path of the newly created temporary directory.
mkdtemp(
prefix: string,
): Promise<Buffer>
Asynchronously creates a unique temporary directory. Generates six random characters to be appended behind a required `prefix` to create a unique temporary directory.

Parameters

prefix: string
The encoding (or an object specifying the encoding), used as the encoding of the result. If not provided, `'utf8'` is used.

Return Type

Promise<Buffer>
mkdtemp(
prefix: string,
options?:
ObjectEncodingOptions
| BufferEncoding
| null
,
): Promise<string | Buffer>
Asynchronously creates a unique temporary directory. Generates six random characters to be appended behind a required `prefix` to create a unique temporary directory.

Parameters

prefix: string
optional
options:
ObjectEncodingOptions
| BufferEncoding
| null
The encoding (or an object specifying the encoding), used as the encoding of the result. If not provided, `'utf8'` is used.

Return Type

Promise<string | Buffer>