Вре́менный файл — файл, создаваемый определённой программой или операционной системой для сохранения промежуточных результатов в процессе функционирования или передачи данных в другую программу. Обычно такие файлы удаляются автоматически создавшим их процессом.
Некоторые операционные системы имеют дополнительные возможности при работе с временными файлами — возможность получить имя временного файла (причём такое, которое будет уникальным — то есть не совпадёт с именем уже существующего файла); возможность указать особый параметр при создании (открытии) файла, предписывающий удалить файл сразу после записи.
В Unix-подобных операционных системах для временных файлов выделен отдельный каталог /tmp. Данные в этом каталоге интенсивно кешируются, а также (во многих системах) удаляются при загрузке операционной системы.
Самый простой способ получить данные из другой программы — потребовать от неё записать их в файл. Такая коммуникация может проводиться даже между разными компьютерами — если, конечно, они располагают общим сетевым диском. Работает даже на интернет-дисках вроде Dropbox, которые являются не особой файловой системой, а резидентной программой с пользовательскими правами, которая синхронизирует файлы между компьютерами. Так, Microsoft Office может сообщать своим копиям с других компьютеров, кто занял файл.
Архитектура программной системы требует именно файл
Библиотека cURL не позволяет генерировать сертификаты сайтов в памяти — только в файле.
Часто временными файлами пользуются командные файлы, цепочки сборки в компиляторах.
Использовалось в утилитах запуска Doom: командная строкаDOS ограничивалась 128 байтами, но в Doom имелся параметр @filename.ext, позволявший обойти это ограничение.
Нужно любой ценой сохранить данные при аппаратно-программном сбое
Например, перезаписывая файл, программа может создать новый с временным именем, и если создание удастся, удалить старый и переименовать новый.
Творческие программы (Corel Draw) могут автоматически сохранять файлы под временными именами, чтобы при сбое вернуться к подобной копии.
Используется браузерами, если сам браузер не умеет просматривать файл и нужно запустить внешнюю программу.
Такая система распространена для драйверов: для распространения программ через интернет удобен один большой исполняемый файл, а именно для драйвера годится не каждый генератор инсталляторов. Так что самоизвлекающийся архив распаковывает собранный в нужной программе инсталлятор драйвера, а затем запускает его.
В таком виде удобно хранить кэш обновлений ПО
Комбинация приведённых причин. Обновления зачастую велики. Их нужно докачивать с того места, откуда прервали. Иногда служба обновления ПО срабатывает при запуске программы или загрузке/завершении ОС, и проще всего передать ей информацию именно через файлы. Иногда (браузер Vivaldi, текстовый редактор Notepad++) обновление — программа, которую нужно запустить.