バッチファイルでの世代バックアップ
※まだ書きかけです。すみません。
※間違ってたらすみません。
※メモ書きなので、自分でも意味不明な箇所も多いです。ごめんなさい。
以下の内容のバッチファイルは、
Dドライブに世代バックアップ用の「日付フォルダ」を自動作成し、
その中に目的のファイル達をバックアップします。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
' ' :: ●準備(バックアップ先の世代フォルダ名作成) set DATE_A=%DATE% set DATE_B=%DATE_A:~-10% set DATE_B=%DATE_B:/=% set TT=%Time:~0,2%%Time:~3,2%%Time:~6,2% :: ↓【午前中に実行するとhhの部分に前ゼロが付かないのでその対策】 :: ↓ 半角スペースを「0」に置き換えます。 set TT=%TT: =0% set DATE_B=%DATE_B%_%TT% :: ●メイン rem Dドライブの指定したフォルダに世代バックアップ用の「日付フォルダ」を生成。 rem (「準備」の段階で作った、日付から「/」や「:」を除外した名前で。) rem md D:\バックアップテスト\%DATE_B%\ rem 必要なファイルのコピー rem 全部丸ごとサブフォルダもじゃなくて、個々のファイルのみを世代バックアップ。 rem xcopy "D:\Data001\A.xlsx" D:\バックアップテスト\%DATE_B% rem xcopy "D:\Data099\B.xlsx" D:\バックアップテスト\%DATE_B% rem xcopy "D:\Data333\C.xlsx" D:\バックアップテスト\%DATE_B% :: 以上のmdとxcopyはセット。事前にmdしないなら以降の1行で。 :: 事前にmdしないので末尾に「\」を付けないといけない。 :: じゃないと「ファイル?ディレクトリ?」って聞かれる。 rem デスクトップ丸ごとサブフォルダも丸ごと世代バックアップ。 rem 重たいファイルやフォルダあったら注意。 xcopy "C:\Users\user0001\Desktop\*.*" D:\\誰かのバックアップ\世代バッチバックアップ\%DATE_B%\ /s /e ' ' |
※必ずS-JISかANSIなどの文字コードで作成してください。
UTF-8とかの文字コードで作ると、動きません。
新しいWindows10はメモ帳のデフォルトの文字コードがUTF-8なので、保存時にS-JISかANSIなどで保存し替えないと、動きません。
※また、実行時は必ず「管理者として実行」で実行して下さい。
※深夜に日付をまたいだときに変な動きになるかもしれません。
未チェックですので、その際はごめんなさい。
ファイル自体に日付や時刻等を付加したかったら、
ファイル名のコピー先のほうの命令文に「\%DATE_B%」を付加します。