用Javascript來產生ftp指令碼的小例子

來源:互聯網
上載者:User

程式也很簡單,就是遍曆一下本地目錄,然後產生一堆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 n";

strScript+="user sybase 111111 n";

strScript+="binn";

strScript+="promptn";

strScript+="cd /hisdata/olddata n";

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+=""n";

s+="mput *.*n";

}

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 += ""n";

}

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 += "n";

strScript += "cd ";

strScript += strTargetFolderName;

strScript += "n";

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

strScript += "lcd "

strScript += eFolders.item();

strScript += "n";

strScript += "mput *.*n";

strScript += "cd  nlcd n";

}

}

strScript+="byen";

WScript.Echo(strScript);

}

else

{

WScript.Echo("Bad Folder Name");

}

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.