stat - ファイル情報の取得

【書式】

#include <sys/types.h>

#include <sys/stat.h>

int stat(const char *pathname, struct stat *sbuf);

【解説】

stat() は pathnameで指定されるファイルに関する情報を得て、sbufが指す

struct stat型構造体に格納します。struct stat型は<sys/stat.h>で定義さ

れています。

DOS窓環境下ではstruct stat のうちの以下のフィールドのみが意味をもち

ます。

st_mode

ファイルのモード

st_nlink

常に1

st_size

ファイルのサイズ

st_mtime

ファイルが最後に修正された時刻

st_atime

st_mtimeと同じ

st_ctime

st_mtimeと同じ

st_mtime, st_atime, st_ctimeはすべてtime_t型です。詳細はtime(3)を参

照してください。

st_modeをS_IFMTでマスクすると、次の情報が得られます。

S_IFDIR

ディレクトリファイル

S_IFREG

通常のファイル

st_modeにはユーザのアクセス許可ビットも示されます。

S_IREAD

読み出し許可

S_IWRITE

書き込み許可

S_IEXEC

実行許可

実行許可はファイル名が*.EXE, *.COM, *.BATのとき、またはディレクトリ

のときにセットされます。

【リターン値】

成功したときには 0を返します。失敗したときにはerrnoをセットして0以外

の値を返します。

【エラー】

ENOENT

パスが見つかりません

【可搬性】

UNIX, DOS窓

【参照】

fstat(3), time(3)

【copyright (c) 安江正樹@東海大学理学部物理学科】