2008年11月19日水曜日

bat ファイルでファイル圧縮

仕事で使っている Windows パソコンで、ちょっとしたバッチファイルが必要になったので作成しました。そのメモ。

毎週、あるファイルを圧縮し、圧縮したファイル名に日付を付けて別のドライブに移動することをしていました。
たいした作業でもないのですが、手作業でやるのも面倒になってきたのでバッチファイルで実行するようにしました。

圧縮ソフトには Lhaplus を使用しています。
"C:\Program Files\Lhaplus\Lhaplus.exe" /c:lzh /n:C:\SampleDir\SampleFile_%date:~-10,4%%date:~-5,2%%date:~-2,2% C:\SampleDir\SampleFile.txt
move C:\SampleDir\SampleFile_*.lzh D:\MoveDir\
pause

1行目
C ドライブの SampleDir フォルダにある SampleFile.txt を lzh 形式で圧縮し、ファイル名を SampleFile_20081118.lzh というように日付を後ろにつけます。
2行目
C ドライブ SampleDir フォルダの SampleFile_*.lzh ファイルを、 D ドライブの MoveDir に移動させます。
3行目
うまく処理されているか確認するため、バッチファイルを止めてます。

Lhaplus のコマンドライン引数は下記サイトが参考になります。
開発リソース/Windows/Lhaplusのコマンドライン引数

日付を扱うのに参考にしたページは下記。
@IT:バッチ・ファイル中で日付をファイル名に使用する

2 件のコメント :

  1. とても参考になりました。
    防犯カメラの画像を定期的に圧縮するのが大変で
    困っていました。

    返信削除
    返信
    1. 匿名さん、こんにちは。
      最近は容量の大きいファイルも増えてきて、定期的に圧縮してバックアップといった作業も増えてきているように感じています。
      今回この記事がお役に立って、業務負荷が軽減されたなら幸いです。

      削除