用 Net 命令使局域网文件批量同步更新

所属分类: 脚本专栏 / DOS/BAT 阅读数: 1240
收藏 0 赞 0 分享
现在大家都希望有个同步软件可以达到网络目录或者文件的更新来减少自己的工作量,现在网络上也有很多软件可以达到这个目的,象同步专家之类的,但是这些软件需要安装服务端和客户端,客户端要常驻才能使用,并且占用了一定的资源。

    如下这个批处理利用net命令来进行文件和目录的同步更新.优点就是任何机器都可以做服务器和客户机,而且不占用任何资源.当然缺点也有就是写批处理有点烦^^.

    我首先写出批处理,然后作详细的解释:

复制代码 代码如下:
  net use S: computer-01D 
  attrib -s -h -r S:ghostC:WINDOWSCOMMANDXcopy.exe /s /e /y 
  D:ghost S:ghost 
  net use * /delete 
  net use S: computer-02D 
  attrib -s -h -r S:ghost 
  C:WINDOWSCOMMANDXcopy.exe /s /e /y D:ghost S:ghost 
  net use * /delete 

  写说明一下net命令的用法,这里采用net命令其中一个参数 net use,如果对其他有兴趣,可以在command窗口打net/?显示其 help 屏幕。

    参数 net use

  作用:连接计算机或断开计算机与共享资源的连接,或显示计算机的连接信息。

  命令格式:net use [devicename | *] [computernamesharename[volume]]

  [password | *]] [/user:[domainname]username] [[/delete] |

  [/persistent:{yes | no}]]

    参数介绍:

    键入不带参数的net use列出网络连接。

  devicename指定要连接到的资源名称或要断开的设备名称。

  computernamesharename服务器及共享资源的名称。

  password访问共享资源的密码。

  *提示键入密码。

  /user指定进行连接的另外一个用户。

  domainname指定另一个域。

  username指定登录的用户名。

  /home将用户连接到其宿主目录。

  /delete取消指定网络连接。

  /persistent控制永久网络连接的使用。

    如下是简单的例子说明:

    (1)net use e: YFANGTEMP 将YFANGTEMP目录建立为E盘

    (2)net use e: YFANGTEMP /delete 断开连接

    这里我只写两行批处理,用意这两大行网络标识是不同的,其他可以依次类推。我的网吧网络标识是computer-01~computer-N

    也就是网吧电脑的网络名称,可以根据自己实际情况更改。譬如user01~userXX

    开始解释每行命令,实际应用稍后解释。

    一.命令解析。

    1.net use S: computer-01D

    (将computer-01的共享盘d盘进行网络连接,并映射成网络驱动盘s盘。这里d盘要做完全共享,如果不是完全共享文件就复制不过去了。

    提示1:如果怕完全共享被人将文件删除,可以设完全共享密码。假设远程共享盘完全共享密码为123,那么这行命令改成如下:

    net use S: computer-01D 123

    这样访问远程客户机共享盘就没有问题了。提示2:这里为什么要选d盘而不是e盘c盘,是要和同步更新的服务机的盘符对应起来,我要复制本地机d盘下的东西,当然要和d盘对应。)

    2. attrib -s -h -r S:ghost

    (把目标盘下要复制的目标目录下的文件属性(只读、隐藏、系统)三项去掉。提示:如果目标盘没有ghost目录接下来的xcopy命令会自动创建的)

    3. C:WINDOWSCOMMANDXcopy.exe /y /s /e D:ghost

    S:ghost(将本地机的d盘下的ghost目录下文件复制到虚拟映射盘s盘下ghost目录,这里的s盘就是computer-01上的d盘。提示1:s盘在执行第一大行后会自动消失,当执行第二大行时computer-02的d盘被虚拟映射成s盘;提示2:/s /e参数含义指把ghost下所有子目录包括空目录全部复制。/y 自动覆盖已有文件)

    4. net use * /delete (断开所有连接)

    2.实际应用

    1.共享盘目录的更新:

    比方现在头痛的传奇,我统一安装在d盘的netgames下的mir目录。把d盘完全共享并设置共享密码为****。当要更新文件和外挂文件时,外挂文件也是放在mir目录下的。这样先调试好一台电脑然后写出如下命令并执行。

    net use S: computer-01D ****

    attrib -s -h -r S:netgamesmir

    C:WINDOWSCOMMANDXcopy.exe D:netgamesmir S:netgamesmir

    net use * /delete

    提示:

    1、这里没有用/s/e就是只复制mir根目录下的文件而不复制整个目录
    2、我们也可以在xcopy前插入一句C:WINDOWSCOMMANDdel /y S:netgamesmir*.*

    把mir下的文件删除干净后再复制。保险起见可以不写。

    3.computer-01可以依次类推写下去,如computer-02 -03 -04. . . . .

    2.共享目录的更新

    上述我们把传奇目录下文件和外挂更新好后,但是出现一个问题。网管软件的桌面图标没有同步更新,好事作到底,上次我们是把整个盘符作了完全共享,这次我们只把一个目录完全共享并设置密码****。因为我用的是pubwin4网管软件,安装c盘,为了安全起见,还是只共享文件夹,而不是整个盘。Pubwin的桌面快捷方式安装在c盘的program files的hitsoft下,将hitsoft完全共享即可,传奇和传奇外挂快捷方式放在目录下的netgames下。批处理如下

   net use S: computer-01hitsoft ****

  attrib -s -h -r S:netgames

  C:WINDOWSCOMMANDXcopy.exe c:program~1hitsoftnetgames

  S:netgames /s /y /e

  net use * /delete

    提示:我们可以做的更多,还有删除目录,只要把xcopy转换成deltree就可以了。
更多精彩内容其他人还在看

for 语句从入门到精通

在批处理中,for是最为强大的命令语句,它的出现,使得解析文本内容、遍历文件路径、数值递增/递减等操作成为可能
收藏 0 赞 0 分享

dos 目录跳转 cd

当我们需要处理不同路径下的文件的时候,很可能需要切换目录,这个时候,可以考虑使用目录跳转命令cd。
收藏 0 赞 0 分享

tree 以树形格式罗列文件

tree ,在英语中的基本含义是“树”,在cmd中,tree命令的功能是以树形格式罗列文件。
收藏 0 赞 0 分享

dos 内容重定向

当我们在cmd窗口中查询某条命令的帮助信息的时候,帮助信息是显示在命令行窗口中的,命令行窗口关闭后,这些帮助信息就看不到了,如果下次还想看,又得在命令行窗口中输入查询命令,比较繁琐。
收藏 0 赞 0 分享

执行批处理bat程序中的条件处理

一直用bat实现部分功能,对于我们仍需要控制是否满意我们的要求,下面是if帮助文档,方便查询
收藏 0 赞 0 分享

不错的批处理脚本 第一部分

非常不错的批处理脚本代码,功能比较多,用到了,很多的批处理机器
收藏 0 赞 0 分享

不错的批处理脚本实例代码 第二部分

不错的批处脚本实例代码,用到了批处理中的很多技巧与知识点,不懂得可以逐一查找相关资料
收藏 0 赞 0 分享

开机更新桌面主题的批处理代码

更新桌面主题的批处理代码
收藏 0 赞 0 分享

非常好的for 教程, 当时我就是看这个学习for 的第1/2页

批处理for命令详解 FOR这条命令基本上都被用来处理文本,但还有其他一些好用的功能! 看看他的基本格式(这里我引用的是批处理中的格式,直接在命令行只需要一个%号)
收藏 0 赞 0 分享

批处理的"循环"效果脚本

曾经在回答一个问题时 无意中想到的方法 今天又看到类似的问题 个人认为是非常实用的 于是 想把这种方法推荐给大家
收藏 0 赞 0 分享
查看更多