Manpages

名 前

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/ に 書 か れ て い る 。