Welcome 微信登录

首页 / 脚本样式 / JavaScript / 用Javascript来生成ftp脚本的小例子

程序也很简单,就是遍历一下本地目录,然后产生一堆ftp命令。
复制代码 代码如下:
function matchDemo(strFolderName)

{

var s;

var re = /200d{5}/ig;

s = strFolderName.match(re);

return(s);

}

function init()

{

strScript ="open 192.168.1.32 ";

strScript+="user sybase 111111 ";

strScript+="bin ";

strScript+="prompt ";

strScript+="cd /hisdata/olddata ";

dicWhiteList = new ActiveXObject("Scripting.Dictionary");

dicWhiteList.add ("20051205_pihou", "");

dicWhiteList.add ("20051206_pihou", "");

dicWhiteList.add ("20060701_pihou", "");

}

function EnumSubFolder(oSubFolder)

{

var eFolders=new Enumerator(oSubFolder.SubFolders);

var s="";

if(eFolders.atEnd())

{

return s;

}

else

{

for (; !eFolders.atEnd(); eFolders.moveNext())

{

s+="lcd "";

s+=eFolders.item();

s+="" ";

s+="mput *.* ";

}

return s;

}

}

function checkList(strToBeChecked)

{

return !dicWhiteList.Exists(strToBeChecked);

}

var strScript,dicWhitList;

var sFolderPath="e:\";

var oFs=new ActiveXObject("Scripting.FileSystemObject");

init();

if (oFs.FolderExists(sFolderPath))

{

//WScript.Echo("valid folder");

var oFolders=oFs.GetFolder(sFolderPath);

var eFolders=new Enumerator(oFolders.SubFolders);

if(eFolders.atEnd())

{

strScript += "mkdir "";

strScript += oFs.GetBaseName(sFolderPath);

strScript += "" ";

}

else

{

for (; !eFolders.atEnd(); eFolders.moveNext())

{

strTargetFolderName=matchDemo(eFolders.item()+"");

if(strTargetFolderName==null || checkList(oFs.GetBaseName(eFolders.item())))

continue;

strTmpFolderName="""+oFs.GetBaseName(eFolders.item())+""";

strScript += "mkdir "

strScript += strTargetFolderName;

strScript += " ";

strScript += "cd ";

strScript += strTargetFolderName;

strScript += " ";

strScript += EnumSubFolder(eFolders.item());

strScript += "lcd "

strScript += eFolders.item();

strScript += " ";

strScript += "mput *.* ";

strScript += "cd  lcd ";

}

}

strScript+="bye ";

WScript.Echo(strScript);

}

else

{

WScript.Echo("Bad Folder Name");

}