パソコンのバックアップ方法を紹介します。


menu

パソコンのバックアップ方法まとめ [あまおとろぐ]

robocopyを使ったバックアップ用バッチファイルでパラメータの変更を一か所にして楽をする方法

  • このエントリーをはてなブックマークに追加
20151203_2
 
robocopyコマンドでバックアップする時、
 
こんな感じですべての行でパラメータ指定していましたが、
set logfile="c:\work\%date:~0,4%-%date:~5,2%-%date:~8,2%_backup.log"
robocopy "C:\ライブラリ1" "J:\バックアップ\ライブラリ1" /MIR /R:0 /W:0/LOG+:"%logfile%" /NP /NDL /TEE /XJD /XJF
robocopy "C:\ライブラリ2" "J:\バックアップ\ライブラリ2" /MIR /R:0 /W:0/LOG+:"%logfile%" /NP /NDL /TEE /XJD /XJF
robocopy "C:\ライブラリ3" "J:\バックアップ\ライブラリ3" /MIR /R:0 /W:0/LOG+:"%logfile%" /NP /NDL /TEE /XJD /XJF
 
この1行だけの修正で良くなります
set logfile="c:\work\%date:~0,4%-%date:~5,2%-%date:~8,2%_backup.log"
robocopy %1 %2 /MIR /R:0 /W:0 /LOG+:"%logfile%" /NP /NDL /TEE /XJD /XJF
 
 
この記事では、パラメータを一か所変更すれば良くなる、
バッチファイルの作成方法を紹介します。
 
 

スポンサーリンク

もくじ

 

スポンサーリンク

Windows 7とWindows Server 2003で実際に使ってます

以下で説明する方法は私が、
  • Windows 7
  • Windows Server 2003
のバックアップで実際に使っている方法です。
 
 
7 と 2003で実行できていますので、
  • Windows Vista
  • Windows XP
  • Windows Server 2008
でも同じ方法が使えると思います。
 
試してみてくださいね。
 
 
 

元のバッチファイルはこんなのでした

以下のようなバッチファイルを作成しました。
 
set logfile="c:\work\%date:~0,4%-%date:~5,2%-%date:~8,2%_backup.log"
robocopy "C:\ライブラリ" "J:\バックアップ\ライブラリ" /MIR /R:0 /W:0 /LOG+:"%logfile%" /NP /NDL /TEE /XJD /XJF
 
名前は「ライブラリのバックアップ.bat」でしたね。
 
 
これを使って、以下の2つのバッチファイルを作成します。
  1. rc.bat
  2. ライブラリのバックアップ.bat
 
 
 

「rc.bat」を新しく作る

以下を参考にして、
rc.batという名前のバッチファイルを作成しましょう。
 
set logfile="c:\work\%date:~0,4%-%date:~5,2%-%date:~8,2%_backup.log"
robocopy %1 %2 /MIR /R:0 /W:0 /LOG+:"%logfile%" /NP /NDL /TEE /XJD /XJF
 
青字はログファイルのパス、
赤字はバックアップのパラメータでした。
 
環境に応じて変更してくださいね。
 
 
%1%2がポイントです。
 
これで「バックアップ元」と「バックアップ先」のパスを設定しています。
 
 
ちなみに、rc.batという名前は変更しても問題ありません。
もう一つのバッチファイルで使いやすいように短い名前にしているだけですので。
 
 
 

「ライブラリのバックアップ.bat」を修正する

以下を参考にして、
ライブラリのバックアップ.batを修正しましょう。
 
cmd /c rc.bat "C:\ライブラリ1" "J:\バックアップ\ライブラリ1"
cmd /c rc.bat "C:\ライブラリ2" "J:\バックアップ\ライブラリ2"
cmd /c rc.bat "C:\ライブラリ3" "J:\バックアップ\ライブラリ3"
 
「cmd /c」コマンドで、「rc.bat ファイル」を実行する、そんな感じです。
 
そのあとの引数には、「バックアップ元」と「バックアップ先」のパスを指定します。
 
 
これで設定は完了です!
 
 
 

バッチファイルを実行してみる

ライブラリのバックアップ.batを実行すると、これまでと同じようにバックアップできました!
 
 
 

まとめ

今後、パラメータを変更したい場合、rc.batだけを修正すれば良いので楽ですね。
 
 
特に、バックアップのフォルダ設定がたくさんある場合に威力を発揮しますよ。
 
設定箇所が1箇所ということは、修正ミスも発生しにくくなります。
 
 
一度、お試しくださいね。
 
スポンサーリンク

  • このエントリーをはてなブックマークに追加

コメント

  • トラックバックは利用できません。

  • コメント (0)

  1. この記事へのコメントはありません。

だーしゅ
IT関係のお仕事してます。
バックアップが趣味。

[当ブログについて]

最近のコメント

  • だーしゅ { カッコ部分も表示されていました。 ご丁寧にありがとうございました。 また、使わせて頂きますね。 } – 4月 25, 4:55 PM
  • { 《補足》 コメント文中に不等号の記号を使ったためか 欠落してしまった部分がありました。 今度はうまく表示できますように。 powershell -command (get-content <ファイル名>)[-15..-1] 《説明》 <ファイル名>以外のところは丸括弧、角括弧の記号を含めてそのまま入力します。 <ファイル名>の部分は変数なので不等号の記号は入力しません。 } – 4月 24, 11:25 PM
  • だーしゅ { > powershell -command (get-content )[-15..-1] > > 《説明》 > これは「ファイルの後ろから数えて 15行目から最終行までを表示せよ」というコマンドです。 なるほど。 確かにサマリー部分は固定行数なので、この方法で表示できますね。 PowerShellはあまり使った事がなかったのですが、いろいろと便利な事ができそうです。 情報ありがとうございました。 } – 4月 24, 4:53 PM
  • いっちゅう { 回答ありがとうございます。 役立つサイトまで探してくださったのですね。 活用させてもらいます。 [1]に関して 「バックアップ先にしかないファイル」というのは長いので 「コピー先のみ」を採用させてもらいます。 [3]に関して 現状でもご所望のことは容易にできると思います(何もインストールの必要はありません)。 コマンドラインでコマンドを打つことになりますが、robocopyコマンド自体がそうなので たぶん苦にならないと思います。UNIXコマンドの tail 見たいなことをします。 コマンドラインで以下のように入力します。 powershell -command (get-content )[-15..-1] 《説明》 これは「ファイルの後ろから数えて 15行目から最終行までを表示せよ」というコマンドです。 Windows PowerShell の機能を利用します。 上記は普段使っているコマンドインタープリターが Windows... } – 4月 24, 8:50 AM
  • だーしゅ { いっちゅうさん、コメントありがとうございます。 >ログって見にくくないですか 確かにズレるのは見にくいですね。 仕方ないので、確認する時は、 「"右から2つ目の数"が失敗のカウント」 と読んでましたよ。 >(別の記事によると、だーしゅさんはログファイル削除派だそうですが、 どちらかと言えば、一定期間が過ぎたログファイルは削除する感じですね。 1年分保持して、更に過去は削除することが多いです。 圧縮しても良いですね。 かなりファイルサイズが小さくなりますので。 [1] バックアップ先にしかないファイル」「コピー先のみ」とかでしょうか。 [2] 調べて見ると、@ITで良いページがありました。 http://www.atmarkit.co.jp/ait/articles/1309/27/news116.html 全部で8コあるようですね。 サイズや属性で更に細かく分類されてます。 [3] robocopyの処理結果は「robocopyコマンドを実行した単位」で表示されますが、 ログ内にファイルパスも出力している場合、サマリーを確認するのがちょっと面倒です。 テキストエディタの検索で「ディレクトリ:」を指定して、ジャンプしてます。 「サマリー表示だけを別ファイルに出力」できると良いかも知れませんね。 } – 4月 23, 3:40 PM
  • だーしゅ { sumi3さん、コメントありがとうございます。 3世代分のバックアップデータがあれば、かなり安心ですね。 シャドウコピーを組み合わせると、利便性がアップするのでおすすめですよ。 } – 4月 23, 2:52 PM