-->

:sqgle txt.backup.js

/*
[txt.backup.js]
簡易日時書式のフォルダ名にバックアップするWSH。
Last Change: 2010-02-26 00:55:23
---

ファイル名の右より".backup.js"を除いた文字列を
拡張子フィルタとしたバックアップを行います。

設定値は、o.optに連想配列で記述します。
o.opt = {fn:'./*.txt',fmt:'md-hi',dir:'bak'};
fmtはo.dt内部日時処理の置換文字(ymdhis)です。
ファイル名の右に".backup.js"が含まれていない場合、
fnを忘れないように。
*/


var o = {};
o.opt = {fn:'./*.txt',fmt:'md-hi',dir:'bak'};
o.fn = WScript.ScriptName;
if(/^(.+)\.backup\.js$/.test(o.fn)){o.opt.fn='./*.'+RegExp.$1}
o.fs = new ActiveXObject('Scripting.FileSystemObject');
o.b2 = function(i){return ((i<10)?'0':'')+i};
o.t2 = function(s,p){for(var x in p){s=s.replace(x,p[x])};return s};
o.dt = function(s){
var t = new Date();
var p = {
y:t.getFullYear()
,m:o.b2(t.getMonth()+1)
,d:o.b2(t.getDate())
,h:o.b2(t.getHours())
,i:o.b2(t.getMinutes())
,s:o.b2(t.getSeconds())
};
return o.t2(s,p);
};

o.backup=function(){
var p = o.opt;
if(!o.fs.FolderExists(p.dir)){o.fs.CreateFolder(p.dir)}
var s = p.dir+'/'+o.dt(p.fmt)+'/';
o.fs.CreateFolder(s);
o.fs.CopyFile(p.fn,s);
};

o.backup();
o = null;