Chinaunix首页 | 论坛 | 博客
  • 博客访问: 414282
  • 博文数量: 116
  • 博客积分: 7087
  • 博客等级: 少将
  • 技术积分: 1175
  • 用 户 组: 普通用户
  • 注册时间: 2005-02-19 23:32
文章分类

全部博文(116)

文章存档

2012年(1)

2011年(2)

2010年(10)

2009年(21)

2008年(18)

2007年(12)

2006年(21)

2005年(31)

我的朋友

分类: Java

2006-08-06 10:20:55

昨天闲着没事,又因为工作需要,写了一个脚本,用来做ftp。
当然不是直接做ftp,而是产生一个ftp的脚本,供ftp命令使用。
程序也很简单,就是遍历一下本地目录,然后产生一堆ftp命令。
为了避免以后再做此类重复劳动,我记在这里。
----------------------------------------------------------
function matchDemo(strFolderName)
{
  var s;
  var re = /200\d{5}/ig;
  s = strFolderName.match(re);
  return(s);
}
function init()
{
 strScript ="open 192.168.1.32 \n";
 strScript+="user sybase 111111 \n";
 strScript+="bin\n";
 strScript+="prompt\n";
 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+="bye\n";
    WScript.Echo(strScript);
}
else
{
 WScript.Echo("Bad Folder Name");
}
阅读(1714) | 评论(1) | 转发(0) |
0

上一篇:用Java来打印

下一篇:脚本搞定一切

给主人留下些什么吧!~~

chinaunix网友2009-10-09 20:56:00

请问 用 javascript 能下载ftp上的文件吗?