Total Copy|本机、局域网断点续传工具(用过都说好)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
复制文件是我们最常用到的操作之一。通常情况下,我们都是利用右键菜单中的复制命令来实现。对于体积比较小的文件,复制功能用起来也得心应手,但在复制体积比较大的文件(如视频文件),或是通过网上邻居通过网络复制文件时,复制功能就有点力不从心了。比如在单机中复制大文件时,如果遇到电脑死机、断电、磁盘空间已满,一旦中断便意味着前功尽弃;通过网上邻居在网络间复制文件时,如果遇到网络速度不佳、断线、对方关机、重启等等情况,重头来过也只能是惟一的选择。现在,有了Total Copy,让用户头痛不已的大文件复制问题便不复存在了!   软件安装与使用   Total Copy 可以弥补Windows复制功能的不足,让复制功能变得与从网上下载文件一样,不但可以限定文件下载速度,更可以断点续传!在实际操作过程中,如果通过Total Copy进行本地复制,速度会比Windows自带的复制功能加快10%,通过网络复制则会提高1%。Total Copy是一款免费软件,支持Windows 9x/2000/XP,大小为68KB,点击下载   Total Copy的安装十分的简单:将下载回来的压缩包解压后,双击Ha_TotalCopy11_zmb.exe文件即可打开如图1所示的安装界面。我们可以在这里认真查看一下软件说明,解掌握Total Copy的主要功能和基本用法,然后直接点击“安装”按钮进行安装。 图1 Total Copy安装界面   安装Total Copy后,用户会发现Windows右键菜单中原有的复制命令并没有消失,也没改变。那么,我们如何使用Total Copy断点续传功能呢?   很简单!通常情况下,我们复制文件是用鼠标左键将文件从原文件夹拖至目标文件夹中,或者用右键菜单中的“复制”命令。现在,请使用鼠标右键将原文件拖至目标文件夹中,再松开右键,哈哈,发现大秘密了吧!没错,右键菜单发生了变化,增加了“Total 复制到这里(&&T)”和“Total 移动到这里(&&O)”两个选项,通过这两个选项你就可以使用断点续传功能复制文件了! 图2 Total Copy复制界面   根据你是想“复制”还是想“移动”的不同目的选择相应选项后,Total Copy会进入工作界面,如图2所示。我们可以清楚地看到当前文件复制的详细信息,例如复制进度、复制速度以及剩余时间、剩余的文件字节等等。在文件复制的过程中,用户可以通过点击“暂停”和“取消”按钮暂停或中断文件的复制。   Total Copy的特殊功能   1. 遇错自动中止   如果在复制过程中出现磁盘空间不足、数据读写错误、网络速度不佳、断线、对方关机、重启等等情况,或是突然有错误发生,复制操作将会自动中止,以前的操作进度将会自动保留,并弹出“复制文件错误”对话框,如图3所示,其中有四个选项: 图3 Total Copy选项界面   跳过所有发生错误的文件:在复制整张光盘时、特别是一些“烂盘”时,该选项十分有用,可以确保将完好的文件复制出来。   跳过这个文件:当某一个具体的文件发生读写错误时,可以跳过该文件,以确保文件的复制进程。   每20秒自动重试:该选项对网络间的复制文件特别有效,当网络意外中断时,你可以点选此选项,Total Copy即可每隔20秒进行一次重试,当网络恢复正常后,即可继续复制,而无需人为干预。   手动重试-暂停复制:相当于点击了“恢复”按钮,当有故障发生时,尝试恢复文件的复制。   通过以上四个选项的操作,故障排除后,可以在先前操作进度的基础上继续复制,也就是断点续传。   2. 断电、死机自动保护   如果在使用Total Copy复制文件的过程中突然断电或是死机、系统自动重启,不必担心,重新启动计算机后Total Copy会自动启动并可以断点续传继续文件的复制。   3. 自由调控“复制”速度   在复制文件的过程中,很多用户都不会静候文件复制完成,往往要利用这一段闲暇进行其他的操作,如看电影、玩游戏等等。这些操作需要占用相应的系统资源,为了保证每个进程都能获得足够的资源,我们有必要对文件复制的速度进行调整。在默认情况下,Total Copy是不限制“复制”速度的,我们可以通过复制界面右上角的“速度限制”滑杆来调整文件复制的速度,以减少文件复制时对系统资源的占用
Python中实现断点续传可以使用`urllib`模块来进行文件的下载。以下是一个简单的示例代码: ```python import urllib.request def resume_download(url, file_path): req = urllib.request.Request(url) try: # 如果文件存在,则获取文件大小 file_size = os.path.getsize(file_path) # 添加Range头,指定下载的起始位置 req.headers['Range'] = 'bytes={}-'.format(file_size) except FileNotFoundError: file_size = 0 # 发送请求 response = urllib.request.urlopen(req) # 获取文件的总大小 total_size = int(response.headers['Content-Length']) + file_size with open(file_path, 'ab') as file: while True: # 读取数据 data = response.read(1024) if not data: break # 写入文件 file.write(data) # 打印下载进度 downloaded_size = file.tell() progress = downloaded_size / total_size * 100 print('Downloaded {:.2f}%'.format(progress)) print('Download completed!') # 调用函数进行断点续传 resume_download('http://example.com/file.zip', 'file.zip') ``` 在这个例子中,我们首先检查本地文件是否存在,如果存在则获取文件大小,然后通过添加`Range`头将请求的起始位置设置为文件大小。接下来,我们发送请求并读取数据,将数据写入文件中。在每次写入数据后,我们计算下载进度并打印出来。 请注意,这个示例代码可能需要根据实际情况进行适当的修改。另外,如果需要处理网络异常、文件校验等情况,可能需要进行更复杂的处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值