周国瑞
(上海出版印刷高等专科学校,上海 200093)
Windows系统下强化容错拷贝命令的实现
周国瑞
(上海出版印刷高等专科学校,上海 200093)
在Windows系统下,用右键菜单或DOS命令拷贝文件是最平常的事情;但当文件名非法、文件所存储扇区破坏、或者文件受病毒感染等原因文件拷贝出现错误提示后,下一个文件的拷贝就会终止,从而导致后面正常的文件就无法进一步继续拷贝,给部分文件被破坏的文件夹或整个磁盘文件整理带来极大不方便。为解决这一问题,文章重新编写了强化的拷贝命令xxcopy.exe,该命令格式为xxcopy[源文件夹或磁盘名称][目标文件夹或磁盘名称];命令参数可选,如果没有参数,就按照界面操作即可。
Windows DOS 拷贝 破坏 文件
随着多样化存储介质在计算机、手机、平板电脑等的应用,特别是图片、视频、音乐、Excel、Word等文件拷贝整理是最平常的事情。相信大部分人遇到过这种事情:拷贝文件时,突然弹出一个窗口,说文件不能读或文件被破坏等提示,这时你只能选择确定,你一旦选了确定,拷贝过程马上停止;如果是文件夹或整个磁盘拷贝,后面的文件也就不能进一步拷贝了,这给文件整理带来极大不方便。为解决这一问题,本文设计了能容忍跨过如上错误的强化文件拷贝命令xxcopy.exe,该命令可以在DOS模式下执行,也可以不带参数在界面模式下操作。
[方法一]在DOS模式下,用xcopy命令拷贝文件、文件夹或整个磁盘到指定的目标文件夹或磁盘。
[方法二]在右键菜单模式下,选择“复制(C)”,然后到指定的目标文件夹或磁盘,再用右键菜单选择“粘贴(P)”进行文件复制。
这两种方法拷贝时,无论哪一种,当遇到某个文件不能顺利拷贝时,都会给出错误提示,拷贝程序终止,从而导致后面正常的文件都无法进一步继续拷贝,给部分文件被破坏的文件夹或整个磁盘文件整理带来极大不方便。
针对使用传统拷贝方法所遇到的问题,提出了可以容错的强化拷贝命令xxcopy.exe。原理如下:[第一步]递归选定的源文件夹或磁盘;[第二步]根据递归到的文件全路径,在选定的目标文件夹或磁盘,从左向右依次建立各级文件夹;[第三步]拷贝源文件夹或磁盘到指定的目标文件夹或磁盘:在拷贝过程中,如果拷贝某个文件出错时,就在目标位置建立和该文件同名的txt文件,同时在该txt文件名后面标注“拷贝出现错误”字样,之后继续拷贝;如果拷贝不出现错误,就正常拷贝。拷贝完成后,用户可以通过搜索“*拷贝出现错误.txt”来查看哪些文件没有被正常拷贝。
在DOS模式下,将c:盘所有文件拷贝到e:bb文件夹下的xxcopy.exe命令行输入格式如图1所示。
图1 xxcopy命令输入格式
在DOS模式下,将c:盘所有文件拷贝到e:bb文件夹下的执行效果如图2所示。
图2 xxcopy命令执行效果
直接选中xxcopy.exe文件,运行界面效果如图3所示。
图3 直接执行xxcopy文件界面
直接选中xxcopy.exe文件,并在运行界面中选“开始拷贝”按钮之后的效果如图4所示。
图4 xxcopy开始拷贝过程
例如拷贝pagefile.sys文件出错,则文件名标记为“pagefile. sys拷贝出现错误.txt”,如图5所示。
图5 xxcopy命令执行结果
本文给出了在Windows操作系统下强化容错拷贝命令的实现方法,给部分文件被破坏的文件夹或整个磁盘文件整理带来了很大方便,同时对想自己写拷贝命令的读者也有很好的参考价值。该命令使用简单,DOS命令格式如下:xxcopy [源文件夹或磁盘名称][源文件夹或磁盘名称];命令参数可选,如果没有参数,就按照界面操作即可,如果鼠标直接选中执行xxcopy.exe文件,同样可以弹出文件拷贝界面。
[1](美)Ivor Horton著.Visual C++2010入门经典(第5版)[M].苏正全,李文娟译.北京:清华大学出版社,2010,12:238,255.
[2]张水波等.Visual C++2008完全学习手册[M].北京:清华大学出版社,2011,1:105,525-528.
[3]明日科技等.Visual C++典型模块与项目实践大全[M].北京:电子工业出版社,2012,4:299.
The Implementation of Fault-tolerant Copy Command in Windows System
ZHOU Guo-rui
(Shanghai Publication Printing College Level Specialty School,Shanghai 200093,China)
In Windows operation system,it is one of the most common things to copy files using the right-click menu or the DOS command.But when file name or file storage sector illegally destructed,or file infected by virus,and so on,a copy of the next file will be terminated,so the rest of normal files will not continue to copy.It brings great inconvenience to arrange folder or the entire disk including a corrupted file(s).In order to solve this problem,this paper gives the xxcopy.exe to strengthen copy command.The usage:xxcopy [source folder or disk name][destination folder or disk name];parameter is optional,if no parameters,you can operate in accordance with the interface.
Windows;DOS;copy;destruction;file
TP309.3
A
1008-1739(2015)12-60-4
定稿日期:2015-05-26