ファイル名の最後に、圧縮した日時を自動でつけられるような。
バッチファイルを記録しておこうと思います。
7-Zipのインストール
公式サイトから、7-Zipさんをダウンロードさせて頂きました。
「64ビット x64」を選択しました。
実行してインストールします。
このあと作成するバッチファイルに、こちらの値を埋め込む予定です。
日付付き圧縮バッチファイル
テキストエディタで下記の内容を記入します。
if %1 == '' goto :eof
:start
set dt=%date:~0,4%%date:~5,2%%date:~8,2%
set dts=%date:~2,2%%date:~5,2%%date:~8,2%
set tm2=%time: =0%
set tm=%tm2:~0,2%%tm2:~3,2%%tm2:~6,2%
:main
rem 拡張子なし %~n1
rem 拡張子あり %~nx1
"%ProgramFiles%\7-Zip\7z.exe" a "%~dp1%~n1_%dts%%tm%.7z" %1
rem 西暦4桁
rem "%ProgramFiles%\7-Zip\7z.exe" a "%~dp1%~n1_%dt%%tm%.7z" %1
rem popd
:end
このとき
- ファイルの種類は「すべてのファイル (*.*)」を選択します
- 文字コードは「ANSI」を選択します
- 「日時をつけて7-Zip圧縮.bat」というファイル名を入力して保存します。
を選択します。保存先はデスクトップになります。
圧縮したいフォルダをドラッグアンドドロップして使用
使い方ですが。
圧縮したいフォルダを1つ、マウスでつまんで(ドラッグ)、batファイルにドロップします。
7-Zipでフォルダが圧縮されて、ファイル名の最後に日時が付きます。
日時は「_221201210246」の部分です。
2022年12月01日21時02分46秒の意味になります。
西暦が2桁ですが、4桁にしたい場合、バッチファイルの%dts%を%dt%に変更すれば変わります。
rem文を御覧ください。
このバッチファイルは、1つのフォルダをドラッグアンドドロップした場合のみ、正常に動作します。
複数のフォルダやファイルには対応していません。
複数ファイル・フォルダに対応したい場合、バッチファイルを手直しして下さい。
バッチファイルの%1の部分が、1つだけという意味になっていますので、ポイントはそのあたりになります。
複数の引数を指定したい場合、%何でしたか?・・・(失念