Trabalhando com pastas na Node.js

Como interagir com as pastas usando a Node.js

Autores do Artigo
Tabela de Conteúdos

O módulo fs do cerne da Node.js fornece muitos métodos úteis que podes usar para trabalhar com as pastas.

Verificar se uma pasta existe

Use fs.access() (e o seu equivalente fsPromises.access() baseado em promessas) para verificar se a pasta existe e a Node.js pode acessá-lo com as suas permissões.

Criar uma nova pasta

Use fs.mkdir() ou fs.mkdirSync() ou fsPromises.mkdir() para criar uma nova pasta:

Ler o conteúdo de um diretório

Use fs.readdir() ou fs.readdirSync() ou fsPromises.readdir() para ler o conteúdo de um diretório.

Este pedaço de código lê o conteúdo de uma pasta, tanto ficheiros como sub.pastas, e retorna os seus caminhos relativos:

Tu podes receber o caminho completo:

Tu podes também filtrar os resultados para apenas retornar os ficheiros, e excluir as pastas:

Renomear uma pasta

Use fs.rename() ou fs.renameSync() ou fsPromises.rename() para renomear uma pasta. O primeiro parâmetro é o caminho atual, o segundo é o novo caminho:

O fs.renameSync() é a versão síncrona:

O fsPromises.rename() é a versão baseada em promessas:

Remover uma pasta

Use fs.rmdir() ou fs.rmdirSync() ou fsPromises.rmdir() para remover uma pasta:

Para remover uma pasta que contém conteúdo use fs.rm() com a opção { recursive: true } para remover os conteúdos recursivamente.

A opção { recursive: true, force: true } faz com que as exceções sejam ignoradas se a pasta não existir: