Popular Posts(last24hours)

30日前ファイル名のフォルダを同じフォルダ内にzip圧縮した後、元のフォルダを消す

※IT系の記事は当方環境での実施内容となるため実施する場合は自己責任でお願いいたします。

前提として、毎回何かの情報を集める際にYYYYMDDフォルダを作成して、その配下に格納するということをやっておくと、このようなスクリプトで対象を指定しやすくなります。いくつかを列記して1日のどこかで実行するようにスケジュールすれば、ファイルサーバの容量を節約できます。

FOR /F "usebackq" %%a IN (`powershell [DateTime]::Today.AddDays"("-30")".ToString"("'yyyyMMdd'")"`) DO SET yesterday1=%%

"C:\Program Files (x86)\Lhaplus\Lhaplus.exe" /c:zip /n:"C:\Users\hoge\Documents\work\%yesterday1%.zip" C:\Users\hoge\Documents\work\%yesterday1%
echo Y|rmdir /s C:\Users\hoge\Documents\work\%yesterday1%
echo work配下の%yesterday1%の圧縮,削除が完了しました %time% >> /path/to/log.txt

"C:\Program Files (x86)\Lhaplus\Lhaplus.exe" /c:zip /n:"C:\Users\hoge\Documents\work2\%yesterday1%.zip" C:\Users\hoge\Documents\work2\%yesterday1% 
echo Y|rmdir /s C:\Users\hoge\Documents\work2\%yesterday1% 
echo work2配下の%yesterday1%の圧縮,削除が完了しました。 %time% >> /path/to/log.txt

.
.
.

ちなみにLhaplusは該当のフォルダが無ければ圧縮ウィンドゥなども立ち上がらないので、動いていないように見えてしまいますが、問題はないです。

削除ということで、念のため、標準出力と標準エラー出力をリダイレクトしてログを取得するには以下のように記述します。

echo Y|rmdir /s C:\Users\hoge\Documents\work\%yesterday1% >> /path/to/delete.log 2>&1

 

 

【PR】最近楽天で購入した商品

こちらもなかなかのボリューム。子供が綺麗に折り紙を折れるようになると、成長が感じられて、嬉しい。かんたん・かわいい・楽しい! 決定版 おりがみ大図鑑 大ボリューム!190作品がオールカラーでわかる! [...]

この手のやつは、いったいどういう仕組みで絵とペンの音声をマッチさせているのか不思議。もの凄いボリュームなので、子供も飽きずに楽しめます。音で学べる!英語ことば図鑑5000 タッチペンつき [ アレン玉 [...]

いつの間にか、黎明篇の続きが!前回で完結したとばかり思っていたので、これは嬉しい。そして、めちゃくちゃ面白い!宇宙戦艦ヤマト 黎明篇 第2部 マリグナント・メモリー [ 塙 龍之 ]価格:1,650円 [...]