【Node.js24.x】Object::lutimesSync()メソッドの使い方
lutimesSyncメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
lutimesSyncメソッドは、Node.jsのfs(ファイルシステム)モジュールに属し、指定されたファイルやシンボリックリンクのアクセス時刻(atime)と更新時刻(mtime)を同期的に変更するメソッドです。このメソッドの最大の特徴は、一般的なutimesSyncメソッドとは異なり、パスがシンボリックリンクを指している場合でも、そのリンク先の実ファイルではなく、シンボリックリンクそのものの時刻属性を直接変更するという点にあります。
利用する際は、変更したい対象のパス、そして新しいアクセス時刻と更新時刻を引数として渡します。時刻は、Unixエポックからのミリ秒数を示す数値、またはJavaScriptのDateオブジェクトとして指定できます。メソッドが正常に実行されると、指定されたパスのファイルまたはシンボリックリンクのatimeとmtimeが更新されます。
このメソッドは同期処理であるため、ファイルシステムへの変更が完了するまで、Node.jsのメインスレッドをブロックします。そのため、アプリケーションの応答性が求められるサーバーサイドの処理などでは、非同期版のfs.lutimesメソッドの使用が推奨されます。しかし、シンプルなスクリプトや起動時の設定処理、あるいは同期処理が許容される特定のユーティリティなど、ブロッキングが問題とならない状況では、コードが直感的で書きやすいという利点があります。ファイルのメタデータを厳密に管理する必要があるシステム開発などで活用されます。
構文(syntax)
1const fs = require('fs'); 2 3const symlinkPath = 'path/to/your/symlink'; 4const accessTime = new Date('2023-01-01T10:00:00Z'); 5const modifyTime = Date.now(); 6 7fs.lutimesSync(symlinkPath, accessTime, modifyTime);
引数(parameters)
path, atime, mtime
- path: string: アクセス時刻と更新時刻を変更したいファイルまたはシンボリックリンクのパス。
- atime: string | Date | number: ファイルの新しいアクセス時刻。Unixタイムスタンプ(ミリ秒)またはDateオブジェクトで指定できます。
- mtime: string | Date | number: ファイルの新しい更新時刻。Unixタイムスタンプ(ミリ秒)またはDateオブジェクトで指定できます。
戻り値(return)
戻り値なし
戻り値はありません