MKDTEMP(3)

名前
mkdtemp - 他と重ならない一時的なディレクトリを作成する

書式
#include <stdlib.h>

char *mkdtemp(char *template);

glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照):

mkdtemp():
    _BSD_SOURCE
    || /* Since glibc 2.10: */
        (_POSIX_C_SOURCE >= 200809L || _XOPEN_SOURCE >= 700)

説明
mkdtemp() 関数は、他と重ならない名前の一時的なディレクトリを template から作成する。 template の後から 6 文字は XXXXXX でなければならない。 この部分はディレクトリ名を他と重ならなくするための 文字列で置き換えられる。 ディレクトリは許可属性を 0700 として作成される。 template は変更されるので、文字列定数にしてはならず、文字配列にすべきである。

返り値
成功した場合、 mkdtemp() 関数は 変更された template 文字列へのポインターを返す。 失敗した場合は、NULL を返して、 errno を適切に設定する。

エラー

EINVAL
    template の最後の 6 文字が XXXXXX でない。この場合、template は変更されない。

errno に設定される他の値については、 mkdir(2) を参照すること。

バージョン
glibc 2.1.91 以降で利用可能。

属性

  マルチスレッディング (pthreads(7) 参照)
関数 mkdtemp() はスレッドセーフである。

準拠
POSIX.1-2008. この関数は BSD に存在する。

関連項目
mkdir(2), mkstemp(3), mktemp(3), tempnam(3), tmpfile(3), tmpnam(3)

この文書について
この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。