【bat】複数フォルダのlogを対象フォルダに移動する(簡易版)

どうも、log整理を面倒くさがる 0 -Ray- です!

今回は私が作成し、実際に使っているbatファイルを紹介していきます!

今回のbatでできること複数フォルダに格納されているlogを指定した対象フォルダに移動する

このbatは検証作業用に作成しました!
少しでも作業工程を減らす意思が垣間見えるbatです

さっそく本題にいきましょう!
一番最後にダウンロードできるリンクを用意するのでご自由にお使いください!

こちらの記事では簡易版のbatを解説しております。
メニュー表示 がある少し凝った版は 別記事 で解説します。

スポンサーリンク

コード

@echo off

@set cpu=C:\Users\test-pc\log\cpu\
@set snmp=C:\Users\test-pc\log\syslog\
@set syslog=C:\Users\test-pc\log\trap\
@set file=*.log

echo ※フォルダパスはエクスプローラーのアドレスバーをそのままコピーすることを推奨します。
set /P STR_INPUT="CPU,syslog,trap 内のファイルを移動します。移動先のフォルダパスを入力して下さい: "

move %cpu%%file% %STR_INPUT%\cpu\
move %snmp%%file% %STR_INPUT%\syslog\
move %syslog%%file% %STR_INPUT%\trap\


echo 処理を終了します。
PAUSE
exit /b

コード解説

それでは解説していきます!

@echo off

@set cpu=C:\Users\test-pc\log\cpu\
@set snmp=C:\Users\test-pc\log\syslog\
@set syslog=C:\Users\test-pc\log\trap\
@set file=*.log

ここはいつもの要件定義です。
移動元のフォルダ構成を定義づけしてます。

echo ※フォルダパスはエクスプローラーのアドレスバーをそのままコピーすることを推奨します。
set /P STR_INPUT="cpu,syslog,trap 内のファイルを移動します。移動先のフォルダパスを入力して下さい: "

ここでユーザーがlogを格納するフォルダを STR_INPUT に格納します。
アドレスバーからコピー&ペーストでできるようにしてます。

move %cpu%%file% %STR_INPUT%\cpu\
move %snmp%%file% %STR_INPUT%\syslog\
move %syslog%%file% %STR_INPUT%\trap\

move コマンドで logを移動します。cpuを例とすると
%cpu%%file% → 移動元 を
%STR_INPUT%\cpu\ → 移動先 に
格納します。

echo 処理を終了します。
PAUSE
exit /b

pause は何かボタンを押すまで処理を一時停止するコマンドです。
設定することで前述の echo で指定した
「beforeに移動完了しました。」
の文字列をユーザーが確認できるようにします。

Download

以下が実際に使用しているbatです!ご自由にどうぞ!
ご自身の環境に合わせて変更するのをお忘れなく

最後までご覧いただきありがとうございます!
それでは良いエンジニアライフを!!

コメント

タイトルとURLをコピーしました