云服务器

推荐列表 站点导航

当前位置:首页 > 服务器技术 > 云服务器 >

服务器_用vbs将本地文件替换为在文件服务器上找到的新版本,问: 您好,脚本专家!如何将

来源:网络整理  作者:  发布时间:2020-12-22 00:30
用vbs将本地文件替换为在文件服务器上找到的新版本,问: 您好,脚本专家!如何将本地文件的修改日期与文件服务器...

dtmLocalDate = objLocalFile.DateLastModified
您好,DC。让我们想想,您是想将某些旧的东西替换为新的。不知道为什么,这让我们感到很不安。
至此您已实现了您的目的。然而,请记住,此脚本仅适用于旧文件。您不能使用它来替换,嗯,老脚本专家。(当然,倒不是有人梦想过替换脚本专家。不过,还是以防万一 ...)
仍在看吗?下一步我们需要确定本地文件是否比服务器文件更旧。下面这行代码就用来解决这个问题:
您好,脚本专家!如何将本地文件的修改日期与文件服务器上的副本进行比较,并且,如果本地文件的版本更旧,将其替换为文件服务器上的版本?
? 常量 OverwriteExisting,它用来告诉脚本继续进行,并使用从服务器复制的版本替换本地文件。
嗯,并不是因为脚本专家正在变老,这得提醒您,我们没有。毕竟,膝盖和后背就应该是这么吱吱作响的;不然怎么知道它们在发挥作用呢?!?
If dtmLocalDate < dtmServerDate Then
Set objServerFile = objFSO.GetFile("\\atl-fs-01\public\test.txt")
Set objServerFile = objFSO.GetFile("\\atl-fs-01\public\test.txt")
dtmServerDate = objServerFile.DateLastModified
那么如果本地文件比其服务器副本更旧,如何将本地文件替换为服务器上找到的副本?方法如下:
If dtmLocalDate < dtmServerDate Then
然后,通过创建对服务器版本 Test.txt 的对象引用重复此过程。请注意,此处我们使用的变量名称不同:本地文件的对象引用存储在 objLocalFile 中,服务器文件的对象引用存储在 objServerFile 中。不用说,我们还使用了不同的变量 (dtmServerDate) 来存储此上次修改日期:
说到 FileSystemObject,我们在此脚本的下一行创建此对象 (Scripting.FileSystemObject) 的一个实例。然后,我们使用以下两行代码绑定到我们的第一个文件 (C:\Scripts\Test.txt),并将此文件的上次修改日期(DateLastModified 属性)存储在名为 dtmLocalDate 的变量中:
别被这的语法搞糊涂了。我们很容易假定旧文件的日期应该大于新文件。但实际上日期不是这么处理的。假定“文件 A”的修改日期为 2/1/2006,“文件 B”的修改日期为 2/15/2006。“文件 A”比较旧,这意味着“文件 A”的修改日期小于(即,产生早于)“文件 B”。
? 我们想要复制的文件(即,服务器上找到的 Test.txt 版本)的路径。
objFSO.CopyFile objServerFile.Path, objLocalFile.Path, OverwriteExisting
dtmServerDate = objServerFile.DateLastModified
? 我们想要将此文件复制到的路径。在本例中,即为本地文件的路径。
Const OverwriteExisting = TRUE
objFSO.CopyFile objServerFile.Path, objLocalFile.Path, OverwriteExisting


不过比起过时的脚本专家来说,您可能更关心过时的文件,是吧?下面这个脚本将替换本地文件 C:\Scripts\Test.txt(如果此文件正好比其在服务器 atl-fs-01 上的副本更旧):
Set objLocalFile = objFSO.GetFile("c:\scripts\test.txt")
Set objLocalFile = objFSO.GetFile("c:\scripts\test.txt")

End If
如您所见,这是个非常简短的小脚本。(我们必须承认除去有点困扰我们的过时的旧东西真的很容易。)我们首先创建一个名为 OverwriteExisting 的常量并将其值设置为 True。我们将使用此常量告诉 FileSystemObject 可以对目标文件的现有实例进行覆盖。默认情况下,如果某文件在驱动器 2 上已存在,则 FileSystemObject 不会将其从驱动器 1 复制到驱动器 2 上。
答:

问:

复制代码 代码如下:

Set objFSO = CreateObject("Scripting.FileSystemObject")
正如您看到的,我们要做的就是调用 CopyFile 方法并向其传递三个参数:
dtmLocalDate = objLocalFile.DateLastModified
注意:据说,当爱斯基摩人老得不中用的时候,他们会被抛弃在大块浮冰上任其自生自灭。幸好脚本专家都不是爱斯基摩人,而我们每天都要穿戴好外衣、手套和长统帽上班(包括夏天)。以防万一。
-- DC

相关热词: 服务器

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://v30.fanwenzhu.com/server/yun/6855.shtml

最新文章
租用云服务器后的备案问 租用云服务器后的备案问

时间:2021-01-05

百度云服务器bcc有什么优 百度云服务器bcc有什么优

时间:2021-01-05

什么是云服务器cvm?怎么 什么是云服务器cvm?怎么

时间:2021-01-05

云服务器怎么保证信息安 云服务器怎么保证信息安

时间:2021-01-05

云服务器怎么预防被攻击 云服务器怎么预防被攻击

时间:2021-01-05

阿里云ECS实例设置用户r 阿里云ECS实例设置用户r

时间:2020-12-29

阿里云ECS服务器入门使用 阿里云ECS服务器入门使用

时间:2020-12-29

怎么配置云服务器 怎么配置云服务器

时间:2020-12-28

Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

服务器_用vbs将本地文件替换为在文件服务器上找到的新版本,问: 您好,脚本专家!如何将

2020-12-22 编辑:

dtmLocalDate = objLocalFile.DateLastModified
您好,DC。让我们想想,您是想将某些旧的东西替换为新的。不知道为什么,这让我们感到很不安。
至此您已实现了您的目的。然而,请记住,此脚本仅适用于旧文件。您不能使用它来替换,嗯,老脚本专家。(当然,倒不是有人梦想过替换脚本专家。不过,还是以防万一 ...)
仍在看吗?下一步我们需要确定本地文件是否比服务器文件更旧。下面这行代码就用来解决这个问题:
您好,脚本专家!如何将本地文件的修改日期与文件服务器上的副本进行比较,并且,如果本地文件的版本更旧,将其替换为文件服务器上的版本?
? 常量 OverwriteExisting,它用来告诉脚本继续进行,并使用从服务器复制的版本替换本地文件。
嗯,并不是因为脚本专家正在变老,这得提醒您,我们没有。毕竟,膝盖和后背就应该是这么吱吱作响的;不然怎么知道它们在发挥作用呢?!?
If dtmLocalDate < dtmServerDate Then
Set objServerFile = objFSO.GetFile("\\atl-fs-01\public\test.txt")
Set objServerFile = objFSO.GetFile("\\atl-fs-01\public\test.txt")
dtmServerDate = objServerFile.DateLastModified
那么如果本地文件比其服务器副本更旧,如何将本地文件替换为服务器上找到的副本?方法如下:
If dtmLocalDate < dtmServerDate Then
然后,通过创建对服务器版本 Test.txt 的对象引用重复此过程。请注意,此处我们使用的变量名称不同:本地文件的对象引用存储在 objLocalFile 中,服务器文件的对象引用存储在 objServerFile 中。不用说,我们还使用了不同的变量 (dtmServerDate) 来存储此上次修改日期:
说到 FileSystemObject,我们在此脚本的下一行创建此对象 (Scripting.FileSystemObject) 的一个实例。然后,我们使用以下两行代码绑定到我们的第一个文件 (C:\Scripts\Test.txt),并将此文件的上次修改日期(DateLastModified 属性)存储在名为 dtmLocalDate 的变量中:
别被这的语法搞糊涂了。我们很容易假定旧文件的日期应该大于新文件。但实际上日期不是这么处理的。假定“文件 A”的修改日期为 2/1/2006,“文件 B”的修改日期为 2/15/2006。“文件 A”比较旧,这意味着“文件 A”的修改日期小于(即,产生早于)“文件 B”。
? 我们想要复制的文件(即,服务器上找到的 Test.txt 版本)的路径。
objFSO.CopyFile objServerFile.Path, objLocalFile.Path, OverwriteExisting
dtmServerDate = objServerFile.DateLastModified
? 我们想要将此文件复制到的路径。在本例中,即为本地文件的路径。
Const OverwriteExisting = TRUE
objFSO.CopyFile objServerFile.Path, objLocalFile.Path, OverwriteExisting


不过比起过时的脚本专家来说,您可能更关心过时的文件,是吧?下面这个脚本将替换本地文件 C:\Scripts\Test.txt(如果此文件正好比其在服务器 atl-fs-01 上的副本更旧):
Set objLocalFile = objFSO.GetFile("c:\scripts\test.txt")
Set objLocalFile = objFSO.GetFile("c:\scripts\test.txt")

End If
如您所见,这是个非常简短的小脚本。(我们必须承认除去有点困扰我们的过时的旧东西真的很容易。)我们首先创建一个名为 OverwriteExisting 的常量并将其值设置为 True。我们将使用此常量告诉 FileSystemObject 可以对目标文件的现有实例进行覆盖。默认情况下,如果某文件在驱动器 2 上已存在,则 FileSystemObject 不会将其从驱动器 1 复制到驱动器 2 上。
答:

问:

复制代码 代码如下:

Set objFSO = CreateObject("Scripting.FileSystemObject")
正如您看到的,我们要做的就是调用 CopyFile 方法并向其传递三个参数:
dtmLocalDate = objLocalFile.DateLastModified
注意:据说,当爱斯基摩人老得不中用的时候,他们会被抛弃在大块浮冰上任其自生自灭。幸好脚本专家都不是爱斯基摩人,而我们每天都要穿戴好外衣、手套和长统帽上班(包括夏天)。以防万一。
-- DC

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://v30.fanwenzhu.com/server/yun/6855.shtml

相关文章

风云图片

推荐阅读

返回云服务器频道首页