当前位置: 首页 > 图文教程 > 脚本技术 > DOS/BAT > 用 Net 命令使局域网文件批量同步更新

DOS/BAT
Compact 显示和更改 NTFS 分区上的文件或目录压缩
Del (erase) 删除指定文件
Convert 将 FAT 和 FAT32 卷转换为 NTFS
copy 将一个或多个文件从一个位置复制到其他位置
Country使 MS-DOS 子系统能使用国际时间、日期、货币、大小写转换和小数分隔符
format命令 参数说明
Xcopy 复制文件和目录,包括子目录。
一个命令行(批处理)延迟执行命令的语法
收集21个DOS常用命令
dos、bat批处理延时执行命令的两种方法
CMD下建立虚拟目录的方法
关于批处理中FOR语句的使用说明与学习技巧
以后经常需要知道CMD/DOS下符号的作用参考,正好发现了这篇
由一段批处理程序所引起的探讨感觉问题是有,不太准确
用bat和 reg实现关闭局域网共享
开通局域网共享(访问本机无需验证即可进入的bat和注册表文件
开通局域网共享(访问本机要填用户名和密码)的注册表和批处理
用注册表实现(仅供备用)硬盘各分区的默认共享:关闭
判断U盘已插入并自动COPY所有内容的批处理-U盘自动复制
用批处理列出所有开机启动项的命令

DOS/BAT 中的 用 Net 命令使局域网文件批量同步更新


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 86 ::
收藏到网摘: n/a

现在大家都希望有个同步软件可以达到网络目录或者文件的更新来减少自己的工作量,现在网络上也有很多软件可以达到这个目的,象同步专家之类的,但是这些软件需要安装服务端和客户端,客户端要常驻才能使用,并且占用了一定的资源。
如下这个批处理利用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就可以了。