• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:バッチファイルでの更新日時による表示)

バッチファイルでの更新日時による表示

このQ&Aのポイント
  • バッチファイルを使って、ユーザーが指定したフォルダ内で特定の条件に基づいて更新日時が表示されるプログラムを作成します。
  • ユーザーは指定したフォルダをドラッグ・アンド・ドロップし、日付を入力し、特定の条件を選択することができます。
  • プログラムは、指定した条件に基づいて更新日時が表示されるだけでなく、サブフォルダも含めて表示することができます。

質問者が選んだベストアンサー

  • ベストアンサー
  • pita-gora
  • ベストアンサー率70% (102/145)
回答No.1

こんにちは。 ざっと作ってみました。一応XPで動作確認済みです。 ただし、ドラッグ&ドロップするものがフォルダであるか、日付の値が妥当であるかのチェックまではしていません。 また入力された日付は含みません。 含む場合は、バッチ内 LSS → LEQ , GTR → GEQ と変えてください。 ------------------------------------------- list.bat echo off set /P YYYYMMDD=日付を入力してください(YYYYMMDD): :loop echo ---------------------------------------------------- echo 入力した日付よりも前に更新されたファイルを表示 - [1] echo 入力した日付よりも後に更新されたファイルを表示 - [2] echo ---------------------------------------------------- set /P chk= 1 か 2 を入力してください: if not defined chk goto loop if %chk% EQU 1 set op=LSS&goto listup if %chk% EQU 2 set op=GTR&goto listup goto loop :listup echo. for /R %1 %%F in ( *.* ) do call :sub "%%~fnxF" %%~tF cmd /k :sub set fdate=%2 set fdate=%fdate:/=% if %fdate% %op% %YYYYMMDD% echo %2 %3 %1 goto :EOF

hiro0163
質問者

お礼

回答ありがとうございます。 期待通りの動作を確認することができました。 バッチファイルの奥深さを知ることができ、勉強になりました。 他にも色々なバッチファイルを書いてみようと思います。 本当にありがとうございました。

関連するQ&A