40 lines
991 B
Plaintext
40 lines
991 B
Plaintext
---
|
|||
|
|
title: Delete directories
|
||
|
|
sidebarTitle: Delete directories
|
||
|
|
mode: center
|
||
|
|
---
|
||
|
|
|
||
|
|
To recursively delete a directory and all its contents, use `rm` from `node:fs/promises`. This is like running `rm -rf` in JavaScript.
|
||
|
|
|
||
|
|
```ts delete-directory.ts icon="/icons/typescript.svg"
|
||
|
|
import { rm } from "node:fs/promises";
|
||
|
|
|
||
|
|
// Delete a directory and all its contents
|
||
|
|
await rm("path/to/directory", { recursive: true, force: true });
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
These options configure the deletion behavior:
|
||
|
|
|
||
|
|
- `recursive: true` - Delete subdirectories and their contents
|
||
|
|
- `force: true` - Don't throw errors if the directory doesn't exist
|
||
|
|
|
||
|
|
Omit `force` to get an error if the directory doesn't exist:
|
||
|
|
|
||
|
|
```ts delete-directory.ts icon="/icons/typescript.svg"
|
||
|
|
try {
|
||
|
|
await rm("path/to/directory", { recursive: true });
|
||
|
|
} catch (error) {
|
||
|
|
if (error.code === "ENOENT") {
|
||
|
|
console.log("Directory doesn't exist");
|
||
|
|
} else {
|
||
|
|
throw error;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
See [File I/O](/runtime/file-io) for more filesystem operations.
|