当前位置: 澳门新濠3559 > 服务器运维 > 正文

复制代码 代码如下,而是产生一个ftp的脚本

时间:2019-11-29 04:05来源:服务器运维
程序也很简单,就是遍历一下本地目录,然后产生一堆ftp命令。复制代码 代码如下:function matchDemo 昨天闲着没事,又因为工作需要,写了一个脚本,用来做ftp。     当然不是直接做f

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

昨天闲着没事,又因为工作需要,写了一个脚本,用来做ftp。
    当然不是直接做ftp,而是产生一个ftp的脚本,供ftp命令使用。

前期在.net 下进行系统操作,同样的功能实现起来非常复杂,没想到用javascript竟然如此简单,所以在网上搜索了代码并加以改进。

{

    程序也很简单,就是遍历一下本地目录,然后产生一堆ftp命令。

复制代码 代码如下:

var s;

    为了避免以后再做此类重复劳动,我记在这里。

function PathList(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fldr = fso.GetFolder(path);
var fd = new Enumerator(fldr.SubFolders);
for (; !fd.atEnd(); fd.moveNext()) {
sd = fd.item();
WScript.Echo(sd.path);
//写入文件
writeFile("a.text",sd.path);
//document.write(sd.path);
PathList(sd.path);
}
}
function FileList(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fldr = fso.GetFolder(path);
var fd = new Enumerator(fldr.SubFolders);
for (; !fd.atEnd(); fd.moveNext()) {
sd = fd.item();
var fc = new Enumerator(sd.files);
for (; !fc.atEnd(); fc.moveNext())
{
WScript.Echo(fc.item());
writeFile("B.text",fc.item());
}
WScript.Echo(sd.path);
//写入文件
writeFile("a.text",sd.path);
//document.write(sd.path);
FileList(sd.path);
}
}
//当前目录文件
function CurFileList(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fldr = fso.GetFolder(path);
var fc = new Enumerator(fldr.files);
for (; !fc.atEnd(); fc.moveNext())
{
WScript.Echo(fc.item());
writeFile("c.text",fc.item());
}
}
/*
object.OpenTextFile(filename[, iomode[, create[, format]]])
参数
object
必选项。object 应为 FileSystemObject 的名称。
filename
必选项。指明要打开文件的字符串表达式。
iomode
可选项。可以是三个常数之一:ForReading 、 ForWriting 或 ForAppending 。
create
可选项。Boolean 值,指明当指定的 filename 不存在时是否创建新文件。如果创建新文件则值为 True ,如果不创建则为 False 。如果忽略,则不创建新文件。
format
可选项。使用三态值中的一个来指明打开文件的格式。如果忽略,那么文件将以 ASCII 格式打开。
设置
iomode 参数可以是下列设置中的任一种:
常数 值 描述
ForReading 1 以只读方式打开文件。不能写这个文件。
ForWriting 2 以写方式打开文件
ForAppending 8 打开文件并从文件末尾开始写。
format 参数可以是下列设置中的任一种:
值 描述
TristateTrue 以 Unicode 格式打开文件。
TristateFalse 以 ASCII 格式打开文件。
TristateUseDefault 使用系统默认值打开文件。
*/
//读文件
function readFile(filename){
var fso = new ActiveXObject("Scripting.FileSystemObject");
var f = fso.OpenTextFile(filename,1);
var s = "";
while (!f.AtEndOfStream)
s += f.ReadLine()+"n";
f.Close();
return s;
}
//写文件
function writeFile(filename,filecontent){
var fso, f, s ;
fso = new ActiveXObject("Scripting.FileSystemObject");
f = fso.OpenTextFile(filename,8,true);
f.WriteLine(filecontent);
f.Close();
//alert('ok');
WScript.Echo("写入成功");
}
//删除文件
function deleteFile(filename,filecontent){
var fso, f, s ;
fso = new ActiveXObject("Scripting.FileSystemObject");
f = fso.GetFile(filename);
f.Delete();
//alert('ok');
WScript.Echo("删除成功");
}
//批量删除,未删除文件夹,删除不了当前目录文件
function DelFileList(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fldr = fso.GetFolder(path);
var fd = new Enumerator(fldr.SubFolders);
for (; !fd.atEnd(); fd.moveNext()) {
sd = fd.item();
var fc = new Enumerator(sd.files);
for (; !fc.atEnd(); fc.moveNext())
{
WScript.Echo(fc.item());
writeFile("B.text",fc.item());
fc.item().Delete();
WScript.Echo("删除成功");
}
WScript.Echo(sd.path);
//写入文件
writeFile("a.text",sd.path);
writeFile("a.text","删除完毕");
//document.write(sd.path);
DelFileList(sd.path);
}
澳门新濠3559,}

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

    ----------------------------------------------------------

//删除当前目录文件
function CurDelFileList(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fldr = fso.GetFolder(path);
var fc = new Enumerator(fldr.files);
for (; !fc.atEnd(); fc.moveNext())
{
WScript.Echo(fc.item());
writeFile("c.text",fc.item());
fc.item().Delete();
writeFile("c.text","删除成功");
}
}
/*
Drive对象负责收集系统中的物理或逻辑驱动器资源内容,它具有如下属性:
l TotalSize:以字节(byte)为单位计算的驱动器大小。
l AvailableSpace或FreeSpace:以字节(byte)为单位计算的驱动器可用空间。
l DriveLetter:驱动器字母。
l DriveType:驱动器类型,取值为:removable(移动介质)、fixed(固定介质)、network(网络资源)、CD-ROM或者RAM盘。
l SerialNumber:驱动器的系列码。
l FileSystem:所在驱动器的文件系统类型,取值为FAT、FAT32和NTFS。
l IsReady:驱动器是否可用。
l ShareName:共享名称。
l VolumeName:卷标名称。
l Path和RootFolder:驱动器的路径或者根目录名称。
*/
function getDriveinfo()
{
var fso, drv, s ="";
fso = new ActiveXObject("Scripting.FileSystemObject");
drv = fso.GetDrive(fso.GetDriveName("c:\"));
s += "Drive C:" + " - ";
s += drv.VolumeName + "n";
s += "Total Space: " + drv.TotalSize / 1024;
s += " Kb" + "n";
s += "Free Space: " + drv.FreeSpace / 1024;
s += " Kb" + "n";
WScript.Echo(s);
}
CurFileList("D:web_01");
FileList("D:web_01");
getDriveinfo();

s = strFolderName.match;

    function matchDemo(strFolderName)

下进行系统操作,同样的功能实现起来非常复杂,没想到用javascript竟然如此简单,所以在网上搜索了代码并加以改进。 复制代码...

}

    {

function init()

    var s;

{

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

strScript ="open 192.168.1.32 n";

    s = strFolderName.match(re);

strScript+="user sybase 111111 n";

    return(s);

strScript+="binn";

    }

strScript+="promptn";

    function init()

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

    {

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

    strScript ="open 192.168.1.32 n";

dicWhiteList.add ;

    strScript+="user sybase 111111 n";

dicWhiteList.add ;

    strScript+="binn";

dicWhiteList.add ;

    strScript+="promptn";

}

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

function EnumSubFolder

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

{

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

var eFolders=new Enumerator(oSubFolder.SubFolders);

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

var s="";

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

if

    }

{

    function EnumSubFolder(oSubFolder)

return s;

    {

}

    var eFolders=new Enumerator(oSubFolder.SubFolders);

else

    var s="";

{

    if(eFolders.atEnd())

for ; eFolders.moveNext

    {

{

    return s;

s+="lcd "";

    }

s+=eFolders.item();

    else

s+=""n";

    {

s+="mput *.*n";

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

}

    {

return s;

    s+="lcd "";

}

    s+=eFolders.item();

}

    s+=""n";

function checkList

    s+="mput *.*n";

{

    }

return !dicWhiteList.Exists;

    return s;

}

    }

var strScript,dicWhitList;

    }

var sFolderPath="e:\";

    function checkList(strToBeChecked)

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

    {

init();

    return !dicWhiteList.Exists(strToBeChecked);

if (oFs.FolderExists

    }

{

    var strScript,dicWhitList;

//WScript.Echo;

    var sFolderPath="e:\";

var oFolders=oFs.GetFolder;

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

var eFolders=new Enumerator;

    init();

if

    if (oFs.FolderExists(sFolderPath))

{

    {

strScript += "mkdir "";

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

strScript += oFs.GetBaseName;

    var oFolders=oFs.GetFolder(sFolderPath);

strScript += ""n";

    var eFolders=new Enumerator(oFolders.SubFolders);

}

    if(eFolders.atEnd())

else

    {

{

    strScript += "mkdir "";

for ; eFolders.moveNext

    strScript += oFs.GetBaseName(sFolderPath);

{

    strScript += ""n";

strTargetFolderName=matchDemo;

    }

if(strTargetFolderName==null || checkList(oFs.GetBaseName

    else

continue;

    {

strTmpFolderName="""+oFs.GetBaseName+""";

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

strScript += "mkdir "

    {

strScript += strTargetFolderName;

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

strScript += "n";

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

strScript += "cd ";

    continue; www.2cto.com

strScript += strTargetFolderName;

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

strScript += "n";

    strScript += "mkdir "

strScript += EnumSubFolder;

    strScript += strTargetFolderName;

strScript += "lcd "

    strScript += "n";

strScript += eFolders.item();

    strScript += "cd ";

strScript += "n";

    strScript += strTargetFolderName;

strScript += "mput *.*n";

    strScript += "n";

strScript += "cd nlcd n";

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

}

    strScript += "lcd "

}

    strScript += eFolders.item();

strScript+="byen";

    strScript += "n";

WScript.Echo;

    strScript += "mput *.*n";

}

    strScript += "cd  nlcd n";

else

    }

{

    }

WScript.Echo;

    strScript+="byen";

}

    WScript.Echo(strScript);

    }

    else

    {

    WScript.Echo("Bad Folder Name");

    }

 

摘自 黑黑博客

当然不是直接做ftp,而是产生一个ftp的脚本,供ftp命令使用。 程序也很简单...

编辑:服务器运维 本文来源:复制代码 代码如下,而是产生一个ftp的脚本

关键词: