【図解あり】フォルダ内のファイルの作成日時のリストを作成する

おはようございます、すぎやまです。

この記事はフォルダ内のファイルリストを作成する記事の、
作成された日時もリストに追加する方法を紹介します。

こんな方におすすめ

  • ファイル作成日時を整理したいという方
  • ChatGPTを使ったけど、機能しなかった方

主に時系列のデータを使用/整理するとき、ファイル作成日時が大切になることがあります。

単純にファイルの順番だけ気にする場合は並び替えで対応可能ですが、
日時が大切な場合もあります。
そういった方のために、今回はフォルダ内のファイルの作成日時をリストに追加する方法を紹介します!

それではどうぞ!

コード紹介

ファイル名と作成日時をリスト化するコードは下記の通りです。

@echo off
setlocal enabledelayedexpansion

rem フォルダのパスを取得
set "targetDirectory=%cd%"

rem 対象ファイルの拡張子を入力
set /p "fileExtension=対象ファイルの拡張子を入力後、エンターキーを入力してください(例: xlsx,docx,txt,csv ...): "

set "OutputFile=filelist.csv"

echo "ファイル名","作成日時" > %OutputFile%

for %%f in (*%fileExtension%) do (
    set "FileName=%%~nxf"
    set "date=%%~tf"
    echo "!FileName!","!date!" >> %OutputFile%
)

echo ファイルリストが %OutputFile% に書き出されました。

endlocal
pause

この上のコードをコピーして、テキストに張り付けてバッチファイルにしてください。
それだけでさっきのファイルが完成します!

変更点

元のファイルとの違いは
「set “date=%%~tf”」
の部分です。

ポイントは
for文の変数代入のオプション
です!

ポイント:for文の変数代入のオプション

forコマンドは、繰り返しの動作のコマンドです。
詳細はこちらのサイトをご覧ください。

今回はこちらの内、「変数の代入」を参照します。

元の記事では「nx」と「f」を使用し、それぞれ「ファイル名+拡張子」と「ファイルサイズ」を変数に入力していました。

今回は、「t」を使用し、「作成日時」を代入しています。

ファイルの使い方

基本的には元の記事と同じ使い方です。
こちらの記事を参照ください!

以上、最後まで読んでいただき誠にありがとうございました。

タイトルとURLをコピーしました