マニュアルページ lstat.3f




名前

     stat, lstat, fstat - ファイル状態の取得


形式

     integer*4 function stat(name,statb)
     character*(*) name 0.br integer*4 statb(13)

     integer*4 function lstat(name,statb)
     character*(*) name
     integer*4 statb(13)

     integer function fstat(lunit,statb)
     integer*4 statb(13)


機能説明

     これらのルーチンは、ファイルに関する詳細情報を返します。

     関数 stat と lstat は、ファイル名 name による問い合わせを 行
     います。

     関数 fstat は、FORTRAN 論理ユニット lunit による問い合わせを
     行います。

     各関数の値は、正常終了の場合はゼロ、それ以外の場合は該当する
     エラーコードになります。

     変数 statb には、ファイルの状態構造が格納されます。

     呼び出しシーケンス

     stat:
     integer*4 stat, statb(13)
     character name*(*)
     ierr = stat ( name, statb )

     fstat:
     integer*4 fstat, logunit, statb(13)
     ierr = fstat ( logunit, statb )

     lstat:
     integer*4 lstat, statb(13)
     character name*(*)
     ierr = lstat ( name, statb )

     配列 statb に返される情報の意味は、 stat (2) で取り上げら れ
     ている構造体 stat の説明にあるとおりです。予備の値は含まれて
     いません。順序は、次のとおりです。

               statb(1)        存在するデバイスの i ノード
               statb(2)        ファイルの i ノード番号
               statb(3)        保護
               statb(4)        ファイルへのハードリンクの数
               statb(5)        オーナーのユーザー ID
               statb(6)        オーナーのグループ ID
               statb(7)        デバイスのタイプ (i ノードがデバイスの場合)
               statb(8)        ファイルの合計サイズ
               statb(9)        ファイルの最終アクセス時刻
               statb(10)       ファイルの最終変更時刻
               statb(11)       ファイルの最終状態変更時刻
               statb(12)       ファイルシステム入出力オプションの最適ブロックサイズ
               statb(13)       割り当てられたブロックの実際の数


注意事項

     これらのルーチンは、INTEGER*4 データの範囲を超えるような「大
     き な」ファイル、つまり、2 GB 以上あるようなファイル上で使用
     すると、エラーや警告メッセージを返さないで、ファイル全体のサ
     イズ (statb(8)) を 32 ビットに切り上げた値を返します。このよ
     うな大規模ファイルを使用することができるのは、Solaris 2.6 以
     降のオペレーティング環境です。大規模ファイルを使用する際は、
     stat64(3F)lstat64(3F)fstat64(3F) などを使用してくだ さ
     い。

     lstat が lstat(2) を呼び出す際に、 stat は libc ライブラリに
     ある stat(2) を呼び出します。これら 2 つの libc 関数の違いに
     ついては、 stat(2) のマニュアルページを参照してください。 つ
     まり、ファイルがシンボリックリンクの場合、結果が異なります。
     lstat はリンクに関する情報を返しますが、 stat はリンクが参照
     するファイルについての情報を返します。


ファイル

     libfui.a


関連項目

     stat(2)access(3F)perror(3F)time(3F)
     stat64(3F)lstat64(3F)fstat64(3F)


使用上の留意点

     パス名の長さは、 <sys/param.h> で定義されてい る  MAXPATHLEN
     の値を超えないようにしてください。