ゆるふわSEの日常♪

IT業界でゆるふわSE(ゆるーく楽に仕事をしたいw)になりたい人あーつまれ(*´▽`*)♪

【明日使えるバッチファイル】フォルダを丸ごとバックアップする~一家に一バッチ!普段使いの大事なフォルダをバックアップして、もしもの時に備えよー♪~

おはこんばんちは!ゆるふわSEの「ちょここ」です(*´ω`*)

 

明日から使える?かもしれないソースを紹介していく明日使シリーズ!!!

第二弾はご家庭用の大事なフォルダを丸ごとバックアップしてくれる便利バッチのご紹介です♪

 

作成方法は超簡単!以前紹介したバッチのひな形に1行コマンドを追加するだけでOK☆彡

では早速、紹介していくよ!

 

 

【テーマ☆彡】

毎日記入しているファイルとか、大事なフォルダを丸ごとバックアップできたら安心だよね(*´▽`*)

一家に一バッチ!ご家庭のおじいちゃん、おばあちゃん、お父さん、お母さんにもおすすめですw

 

【使い方、処理内容☆彡】

バッチファイルをダブルクリックすると、コピー元に指定したフォルダを、コピー先に指定したフォルダに自動でバックアップ(コピー)してくれます。

しかも2回目以降はコピー元に更新があったものだけをバックアップするという親切設計であるため、バックアップにかかる時間も短縮されます(*´▽`*)

 

【そーすこーど☆彡】

@echo off

rem+-------------------------------------------
rem 作成日:
rem 作成者:
rem 更新日:
rem 更新者:
rem 処理内容:
rem+-------------------------------------------

rem 変数の設定
set HOGE="変数の値"

rem バッチファイルのあるフォルダ(カレントディレクトリ)に移動
pushd %0..

rem コマンドプロンプト画面をクリア
cls

echo バックアップ処理を実行します。
rem XCOPYによるバックアップ処理
xcopy C:ackup_from D:ackup_to /d /e /h /r /y
echo バックアップ処理を実行しました。

pause
exit

 

【解説☆彡】 ひな形以外の部分(赤字)を解説していくよー(*´ω`*)

今回はたった一行のコード追加でOK!

xcopy C:ackup_from D:ackup_to /d /e /h /r /y

⇒「xcopy」コマンドによりコピー元フォルダ(C:ackup_from)の中身をコピー先フォルダ(D:ackup_to)にコピーします。

※コピー元、コピー先のフォルダパスを変更し、ご家庭に合わせ自由にバックアップ元、先を設定してください。

※構文:xcopy [source file] [target file] (option)

※/d:コピー先に同名のファイルが存在する場合に更新日が新しいファイルのみコピーする

※/e: ファイルが存在しなくてもディレクトリごとコピーする

※/h :隠しファイルやシステムファイルも全てコピーする

※/r :読み取り専用属性のファイルも上書きコピーできるようにする

※/y:同名のファイルが存在する場合、上書きの確認を行わない

 

複数のフォルダを一度にバックアップしたい場合は赤字のコードを改行で追加し、コピー元、コピー先を指定すればOKですよ!

 

※注意点

xcopyコマンドにも実は欠点があり、ファイルパスが255バイトを超える場合、エラーとなりコピーできない仕様のようです。※ファイルシステムの制限で回避不可

業務で使用する場合に、本制限にかかる可能性があればrobocopyコマンド(パスの制限なし)を代わりに使用する必要があります。 

 

でゎでゎ☆彡