Provided by: debianutils_4.8.4_amd64
名前
tempfile - 安全な一時ファイルの作成
書式
tempfile [-d DIR] [-p STRING] [-s STRING] [-m MODE] [-n FILE] [--directory=DIR] [--prefix=STRING] [--suffix=STRING] [--mode=MODE] [--name=FILE] [--help] [--version]
説明
tempfile は、一時ファイルを安全な方法で作成します。ファイル名の選択に tempnam(3) を使用 し、これを O_RDWR | O_CREAT | O_EXCL を用いてオープンします。ファイル名は標準出力に出力さ れます。ディレクトリの選択に関する実際のステップは、tempnam(3) を参照してください。 ファイルを作成するディレクトリを、以下の順番で探します (しかし確実なことは tempnam(3) を参 照してください)。 a) 環境変数 TMPDIR が存在し、適切なディレクトリ名が設定されていれば、これを使用します。 b) そうでない場合、--directory 引数が指定されていて適切であれば、これを使用します。 c) そうでない場合、P_tmpdir (<stdio.h> で定義) が適切であれば、これを使用します。 d) 最後に、実装で定義したディレクトリ (/tmp) を使用します。
オプション
-d, --directory DIR ファイルを DIR に配置します。 -m, --mode MODE ファイルのモードを 0600 に代えて MODE で開きます。 -n, --name FILE ファイル名として tempnam(3) に代えて FILE を使用します。このオプションを与える と、-d, -p, -s の各オプションを無視します。 -p, --prefix STRING STRING の 5 文字までを名前の生成に使用します。 -s, --suffix STRING STRING を末尾にするファイルを生成します。 --help 使用方法を標準出力に表示し、正常終了します。 --version バージョン情報を標準出力に表示し、正常終了します。
戻り値
終了ステータスが 0 は一時ファイルが正常に作成できたことを意味します。その他の終了ステータ スはエラーです。
バグ
NFS パーティションでファイルを作成する際、排他作成は保証されません。tempfile は一時ディレ クトリを作成できません。tempfile は非推奨です。代わりに mktemp(1) を使用してください。
例
#!/bin/sh #[...] t=$(tempfile) || exit trap "rm -f -- '$t'" EXIT #[...] rm -f -- "$t" trap - EXIT exit
関連項目
tempnam(3), mktemp(1)
翻訳
倉澤 望 <nabetaro@debian.or.jp>, 2012 Debian JP Documentation ML <debian-doc@debian.or.jp>