.\" -*- coding: UTF-8 -*- '\" t .\" Copyright (C) 1993 David Metcalfe (david@prism.demon.co.uk) .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\" References consulted: .\" Linux libc source code .\" Lewine's _POSIX Programmer's Guide_ (O'Reilly & Associates, 1991) .\" 386BSD man pages .\" Modified Sat Jul 24 18:48:06 1993 by Rik Faith (faith@cs.unc.edu) .\" Modified Fri Jun 23 01:26:34 1995 by Andries Brouwer (aeb@cwi.nl) .\" (prompted by Scott Burkett ) .\" Modified Sun Mar 28 23:44:38 1999 by Andries Brouwer (aeb@cwi.nl) .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH mktemp 3 "23 июля 2024 г." "Linux man\-pages 6.12" .SH НАИМЕНОВАНИЕ mktemp \- создаёт уникальное имя для временного файла .SH БИБЛИОТЕКА Standard C library (\fIlibc\fP,\ \fI\-lc\fP) .SH ОБЗОР .nf \fB#include \fP .P \fBchar *mktemp(char *\fP\fItemplate\fP\fB);\fP .fi .P .RS -4 Требования макроса тестирования свойств для glibc (см. \fBfeature_test_macros\fP(7)): .RE .P \fBmktemp\fP(): .nf .\" || _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED Since glibc 2.12: (_XOPEN_SOURCE >= 500) && ! (_POSIX_C_SOURCE >= 200112L) || /* glibc >= 2.19: */ _DEFAULT_SOURCE || /* glibc <= 2.19: */ _SVID_SOURCE || _BSD_SOURCE Before glibc 2.12: _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 500 .fi .SH ОПИСАНИЕ \fIНикогда не используйте эту функцию\fP; см. ДЕФЕКТЫ .P Функция \fBmktemp\fP() генерирует на основе шаблона \fItemplate\fP уникальное имя для временного файла. Последние шесть символов \fItemplate\fP должны быть равны XXXXXX, они будут заменены на строку, которая сделает имя файла уникальным. Так как \fItemplate\fP будет меняться, он должен быть объявлен не строковой константой, а массивом символов. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" Функция \fBmktemp\fP() всегда возвращает \fItemplate\fP. При создании уникального имени последние шесть байтов \fItemplate\fP заменяются так, что имя становится уникальным (то есть, такого имени ещё нет). Если уникальное имя невозможно создать, \fItemplate\fP будет равно пустой строке, а \fIerrno\fP будет назначен код ошибки. .SH ОШИБКИ .TP \fBEINVAL\fP Последние шесть символов \fItemplate\fP не равны XXXXXX. .SH АТРИБУТЫ Описание терминов данного раздела смотрите в \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. Интерфейс Атрибут Значение T{ .na .nh \fBmktemp\fP() T} Безвредность в нитях MT\-Safe .TE .SH СТАНДАРТЫ Отсутствуют. .SH ИСТОРИЯ .\" .SH NOTES .\" The prototype is in .\" .I .\" for libc4, libc5, glibc1; glibc2 follows the Single UNIX Specification .\" and has the prototype in .\" .IR . 4.3BSD, POSIX.1\-2001. Removed in POSIX.1\-2008. .SH ОШИБКИ Никогда не используйте \fBmktemp\fP(). Некоторые реализации следуют 4.3BSD и заменяют XXXXXX текущим ID процесса и одним символом, поэтому может быть возвращено только 26 уникальных имен. С одной стороны такие имена легко подобрать, а с другой есть вероятность возникновения состязательности при проверке существования имени и открытия файла, поэтому каждое использование \fBmktemp\fP() является угрозой безопасности. Состязательность не может возникнуть, если использовать функции \fBmkstemp\fP(3) и \fBmkdtemp\fP(3). .SH "СМОТРИТЕ ТАКЖЕ" \fBmktemp\fP(1), \fBmkdtemp\fP(3), \fBmkstemp\fP(3), \fBtempnam\fP(3), \fBtmpfile\fP(3), \fBtmpnam\fP(3) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства разработал(и) aereiae , Alexey , Azamat Hackimov , Dmitriy S. Seregin , Dmitry Bolkhovskikh , ITriskTI , Max Is , Yuri Kozlov , Иван Павлов , Малянов Евгений Викторович и Kirill Rekhov . .PP Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, .UR https://www.gnu.org/licenses/gpl-3.0.html .UE версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ. .PP Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу .MT списка рассылки русских переводчиков .ME .