FUTIMESAT(2) | Linux Programmer's Manual | FUTIMESAT(2) |
名前¶
futimesat - ディレクトリファイルディスクリプターに対する相対パスのファイルのタイムスタンプを変更する
書式¶
#include <fcntl.h> /* AT_* 定数の定義 */ #include <sys/time.h>
int futimesat(int dirfd, const char *pathname, const struct timeval times[2]);
futimesat(): _GNU_SOURCE
説明¶
このシステムコールは廃止予定である。代わりに utimensat を使用すること。
futimesat() システムコールは utimes() と全く同様に動作するが、このマニュアルページで説明する点が異なる。
pathname で渡されたパス名が相対パスの場合、 パス名はファイルディスクリプター dirfd が参照するディレクトリに対する相対パスと解釈される (相対パスの場合に utimes(2) で行われるように、呼び出したプロセスのカレントワーキングディレクトリに対する相対パスと解釈されるわけではない)。
pathname が相対パスで dirfd が特別な値 AT_FDCWD の場合、 pathname は (utimes(2) 同様) 呼び出したプロセスのカレントワーキングディレクトリに対する相対パスと解釈される。
pathname が絶対パスの場合、 dirfd は無視される。
返り値¶
成功すると、 futimesat() は 0 を返す。 エラーの場合、-1 を返し、 errno にエラーを示す値をセットする。
エラー¶
utimes(2) で発生する可能性があるエラーのいくつかは futimesat() でも起こること可能性がある。 また、 以下のエラーも futimesat() では発生することがある。
バージョン¶
futimesat() はカーネル 2.6.16 で Linux に追加された。 ライブラリのサポートは glibc バージョン 2.4 で追加された。
準拠¶
このシステムコールは非標準である。 POSIX.1 に提案された仕様に基づいて実装されたが、 その仕様は utimensat(2) で置き換えれた。
同様のシステムコールが Solaris に存在する。
注意¶
glibc での注意¶
pathname が NULL の場合、 glibc の futimesat() のラッパー関数は dirfd が参照するファイルの時刻情報を更新する。
関連項目¶
stat(2), utimensat(2), utimes(2), futimes(3), path_resolution(7)
この文書について¶
この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。
2017-09-15 | Linux |