Provided by: manpages-ja-dev_0.5.0.0.20221215+dfsg-1_all 
      
    
名前
       utime, utimes - ファイルの最終アクセス時刻と修正時刻を変更する
書式
        #include <sys/types.h>
       #include <utime.h>
       int utime(const char *filename, const struct utimbuf *times);
       #include <sys/time.h>
       int utimes(const char *filename, const struct timeval times[2]);
説明
       備考:  最近のアプリケーションの場合、 utimensat(2) で説明されているインターフェースを使いたいと思うかもし
       れない。
       utime()  システムコールは filename で示される  inode  のアクセス時刻と修正時刻を  times  中の  actime  と
       modtime にそれぞれ変更する。
       times が NULL の場合、ファイルのアクセス時刻と修正時刻は現在の時刻に設定される。
       タイムスタンプの変更は以下のいずれかの場合に許可される。       プロセスに適切な特権がある場合、      実効
       (effective) ユーザー ID がファイルのユーザー ID と等しい場合、 times が NULL かつ、プロセスがファイルへの
       書き込み許可を持っている場合。
       構造体 utimbuf は以下に示すようになっている。
           struct utimbuf {
               time_t actime;       /* アクセス時刻 */
               time_t modtime;      /* 修正時刻 */
           };
       utime()  システムコールは 1 秒の分解能でタイムスタンプを指定することができる。
       utimes()   は  utime()   と同様であるが、  times  引数が構造体ではなく配列を参照する。   この配列の要素は
       timeval 構造体で、タイムスタンプの指定を 1 マイクロ秒の分解能で行うことができる。 構造体 timeval は以下に
       示す通りである。
           struct timeval {
               long tv_sec;        /* 秒 */
               long tv_usec;       /* マイクロ秒 */
           };
       times[0]  は新しいアクセス時刻を、  times[1]  は新しい修正時刻を規定する。 times が NULL の場合、 utime()
       同様、ファイルのアクセス時刻と修正時刻は現在の時刻に設定される。
返り値
       成功した場合は 0 が返される。エラーの場合は -1 が返され、 errno が適切に設定される。
エラー
       EACCES path を構成する何れかのディレクトリに検索許可がない (path_resolution(7)  も参照すること)。
       EACCES times が NULL である。 または、呼び出し元の実効ユーザー ID  がファイルの所有者と一致しない。  また
              は、呼び出し元がそのファイルへの書き込み許可を持たず、  特権も持っていない (Linux の場合、ケーパビ
              リティ CAP_DAC_OVERRIDE も CAP_FOWNER も持っていない)。または、
       ENOENT filename が存在しない。
       EPERM  times が NULL でなく、かつ呼び出し元の実効 UID がファイルの所有者と一致せず、 かつ呼び出し元が特権
              を持っていない (Linux の場合、ケーパビリティ CAP_FOWNER を持っていない)。
       EROFS  path が読み込み専用のファイルシステム上にある。
準拠
       utime(): SVr4, POSIX.1-2001.  POSIX.1-2008 は utime()  を廃止予定としている。
       utimes(): 4.3BSD, POSIX.1-2001.
注意
       Linux では、不変 (immutable) ファイルのタイムスタンプを変更したり、 追加専用 (append-only) のファイルに現
       在時刻以外のタイムスタンプを 設定したりすることは、許可されていない。
関連項目
        chattr(1), touch(1), futimesat(2), stat(2), utimensat(2), futimens(3), futimes(3), inode(7)
この文書について
       この man ページは Linux man-pages プロジェクトのリリース 5.10  の一部である。プロジェクトの説明とバグ報告
       に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。
Linux                                               2017-09-15                                          UTIME(2)