【Node.js24.x】Object::utimesSync()メソッドの使い方
utimesSyncメソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
utimesSyncメソッドは、指定されたファイルのアクセス時刻と最終更新時刻を変更するために使用されるNode.jsのメソッドです。このメソッドはfs(ファイルシステム)モジュールの一部として提供されており、ファイルシステムの情報を操作することができます。
このメソッドは同期的に動作するため、処理が完了するまでプログラムの実行を一時停止(ブロック)させます。そのため、大量のファイル操作やパフォーマンスが重要なアプリケーションでは、非同期版のfs.utimesメソッドの利用を検討することが推奨されますが、シンプルなスクリプトや起動時の初期化処理など、特定の同期処理が必要な場面で手軽に利用できます。
utimesSyncメソッドは、主に3つの引数を取ります。1つ目は変更対象のファイルのパスを文字列、Buffer、またはURLオブジェクトで指定します。2つ目は新しいアクセス時刻(atime)をDateオブジェクトまたはUNIXタイムスタンプ(秒単位)の数値で指定します。3つ目は新しい最終更新時刻(mtime)を同様にDateオブジェクトまたはUNIXタイムスタンプ(秒単位)の数値で指定します。アクセス時刻はファイルが最後に読み込まれた時刻を、最終更新時刻はファイルの内容が最後に変更された時刻を示します。
ファイルのタイムスタンプを任意に設定できるため、バックアップシステムの整合性維持、ファイルの鮮度管理、あるいは特定のビルドプロセスにおけるファイルのメタデータ調整など、様々なファイル管理要件を満たす際に役立ちます。
処理中にエラーが発生した場合、例えば指定されたパスのファイルが存在しない、またはファイルへの書き込み権限がないといった状況では、例外がスローされます。そのため、安全に利用するためにはtry...catch文を使って適切なエラーハンドリングを行うことが重要です。
構文(syntax)
1const fs = require('node:fs'); 2const filePath = '/path/to/your/file.txt'; // 対象ファイルのパス 3const accessTime = new Date(); // ファイルのアクセス時刻 4const modifyTime = new Date(); // ファイルの変更時刻 5fs.utimesSync(filePath, accessTime, modifyTime);
引数(parameters)
path, atime, mtime
- path: string: ファイルパスまたはシンボリックリンクのパス
- atime: number | Date: アクセス時刻
- mtime: number | Date: 変更時刻
戻り値(return)
戻り値なし
戻り値はありません