JavaScript:
Создание временного файла
Как это сделать:
В JavaScript операции с временными файлами зачастую зависят от внешних библиотек. Вот быстрый пример использования библиотеки tmp
, которую вы можете установить с помощью npm install tmp
.
const tmp = require('tmp');
// Создание временного файла
tmp.file((err, path, fd, cleanupCallback) => {
if (err) throw err;
console.log(`Путь файла: ${path}`);
// Работаем с файлом...
// Когда закончили, очищаем за собой
cleanupCallback();
});
Пример вывода может выглядеть так:
Путь файла: /tmp/tmp-9Xp2nVn6hB5W.tmp
Подробнее
Создание временных файлов имеет долгую историю в информатике, начиная с времен, когда объем системной памяти был ограничен, и промежуточным данным требовалось место для хранения. В Node.js модуль fs
может быть использован для создания временных файлов, но ему не хватает встроенных инструментов для генерации временных файлов.
Использование библиотек вроде tmp
или tempfile
довольно обычно. Они создают уникальные имена файлов, снижая риск конфликта имен и обычно сами заботятся о очистке. fs.mkdtemp
также может быть полезен для создания временного каталога для размещения нескольких временных файлов.
Что касается внутреннего устройства, эти библиотеки обычно используют нативные механизмы ОС для безопасного создания этих файлов, часто размещая их в системно определенном временном каталоге. На подобных Unix системах это обычно /tmp
, в то время как Windows использует что-то более сложное в LocalAppData
.
Когда дело доходит до временных файлов, помните, что хотя они и “временные”, неправильное обращение может привести к уязвимостям безопасности или накоплению оставшихся файлов, загромождающих систему.
Смотрите также
- Модуль fs в Node.js - для ручной работы с файлами.
- Пакет
tmp
на npm - утилита для временных файлов и каталогов. - Пакет
tempfile
на npm - для создания пути к случайному временному файлу.