Node js удалить папку с файлами

Обновлено: 03.07.2024

Вы не можете удалить файл при запуске JavaScript из браузера, но вы можете сделать это при запуске JavaScript из серверной среды, такой как NodeJS.

Если вам нужно удалить файл с помощью NodeJS, вы можете использовать метод fs.unlink() или fs.unlinkSync(). В этом руководстве показано, как использовать оба метода для удаления файла в NodeJS.

Методы unlink() и unlinkSync() предоставляются модулем fs, что является сокращением от файловой системы. Во-первых, вам нужно импортировать модуль fs с помощью require() следующим образом:

Затем вы можете начать использовать методы для удаления вашего файла. Начнем с изучения метода unlinkSync().

Удалить файл с помощью метода unlinkSync()

Метод unlinkSync() удалит файл синхронно, что означает, что выполнение кода JavaScript будет остановлено до завершения выполнения метода.

Предположим, у вас есть следующая папка проекта JavaScript:

Вы можете удалить файл picture.jpg, используя следующий код JavaScript:

Поместите приведенный выше код в файл index.js, затем запустите файл с помощью команды node index.js.

Приведенный выше код удалит файл picture.jpg и выведет на консоль сообщение об удалении файла.

Код окружен блоком try..catch, поэтому журнал будет напечатан, если файл не может быть удален по какой-либо причине (нет разрешения на удаление, файл не найден и т. д.)

Далее рассмотрим метод unlink().

Удалить файл с помощью метода unlink()

Метод fs.unlink() асинхронно удалит файл в вашей файловой системе, что означает, что выполнение кода JavaScript продолжится, не дожидаясь завершения метода.

  • Строка пути, содержащая путь к файлу, который вы хотите удалить
  • Функция обратного вызова, которая будет выполняться после завершения работы функции. Объект ошибки будет передан этой функции методом.

Например, приведенный ниже код удалит файл picture.jpg из той же папки, из которой вызывается скрипт:

Метод unlink() не нужно заключать в блок try..catch, потому что каждый раз, когда метод сталкивается с ошибкой, эта ошибка будет перехвачена и передана функции обратного вызова, как показано выше.

Вот как вы можете использовать JavaScript для удаления файла. Имейте в виду, что удаление файлов возможно только при использовании JavaScript в серверной среде, такой как NodeJS. Вы не можете удалить файл при запуске JavaScript из браузера.

См. также:

Повысьте уровень своих навыков программирования

Я время от времени рассылаю электронные письма с последними руководствами по программированию. Оставьте свой адрес электронной почты в поле ниже, и я буду присылать новые материалы прямо на ваш почтовый ящик!


сообщить об этом объявлении

О нас

Натан Себхастян – инженер-программист, который любит писать технические руководства. Изучайте JavaScript и другие концепции технологий веб-разработки с помощью простых для понимания объяснений, написанных простым английским языком.


Вы ищете способ удалить или удалить файл из каталога с помощью Node.js? Эта статья покажет вам, как это сделать.

В Node.js есть встроенный способ сделать это с помощью основного модуля файловой системы (Fs), который имеет методы fs.unlink() и fs.unlinkSync() для удаления файла.

Синхронная версия fs.unlinkSync() остановит ваш код и будет ждать, пока файл не будет удален или не произойдет ошибка. А асинхронная версия fs.unlink() не блокирует ваш код и не возвращает функцию обратного вызова при удалении файла.

Мы покажем вам, как использовать оба примера.

fs.unlink()

Сначала рассмотрим подход fs.unlink():

Давайте разберем каждую часть кода:

  1. Сначала мы импортируем модуль Fs и сохраняем его в переменной fs.
  2. Далее мы получаем путь к нашему файлу и храним его в переменной pathToFile.
  3. Затем мы используем функцию fs.unlink(). Мы передаем путь к файлу функции, и она возвращает обратный вызов.
  4. Внутри функции обратного вызова мы выполняем некоторую обработку ошибок, а затем, в случае успеха, выводим сообщение console.log() об успехе.

И если вы заглянете в свою директорию, то увидите, что рассматриваемый файл удален.

Узнайте, как создать и развернуть готовое к работе полнофункциональное приложение с помощью React.js, Node.js и MongoDB.

fs.unlinkSync()

Далее рассмотрим синхронный метод fs.unlinkSync():

Как и в предыдущем примере, нам требуется модуль Fs, а затем мы получаем путь к файлу.

Но тогда мы используем попытку. поймать заявление. В разделе try мы передаем переменную pathToFile в функцию fs.unlinkSync() и регистрируем сообщение об успешном завершении удаления файла. И мы используем раздел catch для выдачи любых возникающих ошибок.

Когда вы заглянете в свой каталог, файл будет удален.

Заключение

Надеюсь, эта статья помогла вам в написании кода.

Спасибо за чтение и удачного кодирования!

Привет, я Ник Мейджор. Я разработчик программного обеспечения из Висконсина, США.

Я создаю бесплатные и платные курсы, опубликовал сотни информационных статей по кодированию и в настоящее время являюсь инженером-программистом внешнего интерфейса в RoundingWell.

Чтобы удалить файл в Node.js, можно использовать unlink(путь, обратный вызов) Node FS для асинхронной операции с файлом и unlinkSync(путь) для синхронной операции с файлом.

В этом учебном пособии по Node.js представлено пошаговое руководство по удалению файла с узлом fs и подробными примерами.

Шаги по удалению файла в Node.js

Ниже приведено пошаговое руководство по программному удалению файла в Node.js.

Шаг 1. Включите модуль файловой системы в программу Node.js.

Мы будем использовать функции unlink() и unlinkSync() этого модуля.

Шаг 2. Удалите файл асинхронно с помощью функции unlink(). Синтаксис представлен ниже

При попытке удалить файл функция обратного вызова вызывается с ошибкой (в качестве аргумента), если таковая имеется.

Шаг 3. Чтобы синхронно удалить файл, используйте функцию unlinkSync(). Синтаксис приведен ниже.

где filePath — это строка, представляющая путь к удаляемому файлу.

Пример 1. Асинхронное удаление файла с помощью функции unlink() Node FS

Для этого примера убедитесь, что рядом с программой-примером node.js есть файл с именем «sample.txt».

Создайте следующую программу Node.js, deleteFile.js , чтобы удалить файл с именем sample.txt в Node.js.

удалить файл.js

Откройте терминал или командную строку и запустите эту программу с помощью команды node, как показано ниже.

Вывод

Файл успешно удален.

Пример 2. Синхронное удаление файла с помощью функции unlinkSync() Node FS

Создайте следующую программу Node.js для синхронного удаления файла в Node.js. Это полезно, если операторы рядом с операцией удаления зависят от удаляемого файла. Функция unlinkSync() гарантирует, что файл будет удален (если он существует) перед выполнением последующих инструкций.

удалитьFileSynchronously.js

Откройте терминал или командную строку и запустите эту программу с помощью команды node, как показано ниже.

Вывод

Файл успешно удален.

Пример 3. Файл, указанный для удаления, отсутствует. (Ошибка: ENOENT: нет такого файла или каталога)

Для этого примера убедитесь, что рядом с программой-примером node.js нет файла с именем «sample11.txt». Мы смоделируем ситуацию, когда мы попытались удалить файл, которого нет в этом месте.

удалитьFile2.js

Откройте терминал или командную строку и запустите эту программу с помощью команды node, как показано ниже.

Вывод

Поскольку файл отсутствует, выдается сообщение об ошибке "Нет такого файла или каталога".

Стажировка в OpenGenus

В этом руководстве на OpenGenus мы узнаем, как создавать или удалять/удалять файлы и каталоги в Node.JS (JavaScript). Для этого мы будем использовать модуль файловой системы (fs).

Доступ к файловой системе — обычная задача, но не для Javascript, поскольку он предназначен для работы в браузере. Хотя Html5 поставляется с API файловой системы, он еще не полностью поддерживается во всех браузерах. Но установка nodejs поставляется с модулем, который может помочь нам преодолеть нашу проблему, связанную с «fs» или файловой системой.

Файловая система или модуль «fs» действует как оболочка или контейнер для выполнения различных операций с файлами. Здесь мы увидим, как создавать и удалять файлы/каталоги в синхронном и асинхронном режимах. Подробнее о модуле в файловой системе можно прочитать.

Как получить доступ к 'fs' или модулю файловой системы в вашей программе?

Чтобы включить модуль в программу, можно использовать ключевое слово require, как показано ниже:

Еще одна переменная или константа должны иметь то же имя, что и у модуля. Таким образом, с помощью этой строки кода мы можем получить доступ ко всем встроенным функциям в модуле 'fs'.

Создание и удаление файлов в программе Javacript/NodeJS

Поскольку есть два режима синхронный и асинхронный, в которых мы можем создавать и файлы, мы их соответственно и увидим.

Но перед этим почему бы нам не узнать, что мы подразумеваем под синхронным и асинхронным режимами и как это влияет на процесс.

Когда вы выполняете что-то или код синхронно, вы ждете, пока он завершится, прежде чем перейти к следующей задаче. Когда вы выполняете что-то асинхронно, вы можете перейти к следующей задаче до ее завершения.

Теперь это в основном означает, что вы можете запускать несколько процессов одновременно без каких-либо проблем в асинхронном режиме, но в синхронном режиме одновременно выполняется только один процесс.

Теперь, когда мы говорим о синхронном и асинхронном режиме в модуле 'fs', мы имеем в виду, что в синхронном режиме первый файл/папка создается до выполнения любой другой задачи, тогда как в асинхронном режиме и процесс создания файла/папки, и запись данных или функции обратного вызова могут выполняться одновременно, что мы увидим ниже.

Читайте также: