前回の記事と同様にDropboxを使ったXAMPP環境の二点間同期のお話です。
今回は前回示した手順を自動化します。
まずStrawberry Perlをインストールします。
そして以下のスクリプトを書きます
#---------------------------------------------------------------------------
#↓↓↓ここからソース↓↓↓
#---------------------------------------------------------------------------
use strict;
use warnings;
use Archive::Zip;
use File::Copy;
my $cmd = 'C:\pleiades\xampp\mysql\bin\mysqldump.exe -u root -x --all-databases > C:\pleiades\xampp\htdocs\dump.sql';
system( $cmd );
#日付、時間を取得
my ($sec, $min, $hour, $mday, $mon,
$year, $wday, $yday, $isdst) = localtime();
$year += 1900;
$mon += 1;
print "バックアップを行います。\n$year年$mon月$mday日\n";
#ファイル名
my $zip_file = $year . "_" . $mon . "_" . $mday . "_" . $hour . "_" . $min . "_" . $sec . '_Backup.zip';
#ZIPファイル作成
my $zip = Archive::Zip->new();
$zip->addTree('C:/pleiades/xampp/htdocs', 'htdocs');
$zip->writeToFileNamed($zip_file);
#ネットワークフォルダにコピー
copy( $zip_file, "バックアップを取りたい場合のパス" . $zip_file);
#---------------------------------------------------------------------------
#↑↑↑ここまでソース↑↑↑
#---------------------------------------------------------------------------
あとは作成したファイルをDropboxフォルダ内で実行するとhtdocsにDBdumpをとってそれをZIPで固めたものがDropboxで共有できます
さすがTさんですね。
返信削除Perlは、ActivePerlではだめですか?
試していないのでなんとも言えないのですが、特別なモジュールを使っているわけではないので動くと思います。
削除windowsではActivePerlの方が知名度が高いですし情報も多いのですが、Strawberry PerlはCPANから直接モジュールをインストールできるので便利な場面が多いです。
以前教えていただいた方法とても重宝しています。
返信削除お話されていた自動化とはこういうものだったんですね~