フォルダ内の最新フォルダを開くバッチファイル
2024年08月07日
概要
週次で日付のフォルダが作られてそこで資料の更新なんかをする場合、大元のフォルダへのショートカットは作れるけど、そこから先の日付フォルダにアクセスするのが面倒くさい。フォルダの中が整理されてれば良いんだけど、諸事情により整理もできない。
今回は、フォルダ内の最新サブフォルダ名を抽出して、そのフォルダを開くバッチファイルについて
バッチファイル作成
「bat フォルダ内の最新フォルダを開くバッチファイル」で調べてみたけど、ドンピシャな検索結果はない。ファイルを対象にしたものがあったので、それをベースに改良することに。
参考サイト
https://it-skill-memo.work/2021/09/02/【バッチファイル】指定フォルダ配下の指定ファ-2/
ソース考察
バッチファイルは日付計算が苦手。最近ではPowerShellで逃げる手もあるけど、コマンドのオプションをうまく使って最新1つだけを取り出してる。なかなかにスマート。
改良ポイント
変えたのは主にコマンドだけで、Dirコマンドを実行する際にディレクトリ指定の/Adを追加。これでディレクトリだけがDirコマンドの結果に出てくるので、元のソースのアルゴリズムで最新の1つだけを取り出して完了。
最後にショートカットをキー登録
いつものようにパスの通ったフォルダに短いファイル名のショートカットを置いて完成。
これでwindows + Rでファイル名を入れて呼び出せる。
関連記事⑦
http://aki.p-kin.net/windows/windowsのファイルアクセスを早める技
以下ソース。
OpenLatestDir.bat
@ECHO OFF
REM 対象フォルダ
SET targetFolder="\\10.20.xx.xx\mtミーテイング\"
REM 対象フォルダ配下の対象フォルダを取得するコマンド(更新日付で降順)を作成
SET getDirListCmd=DIR /b /O-d /Ad %targetFolder%
REM 更新日付が1番新しい1フォルダのみを処理する
FOR /F %%a IN ('%getDirListCmd%') DO (
start "" %targetFolder%%%a
goto break
)
:break
EXIT
PR
Comment