代码之家  ›  专栏  ›  技术社区  ›  Andreas Grech

在Windows系统上移动文件的最快方法[关闭]

  •  30
  • Andreas Grech  · 技术社区  · 17 年前

    我想 将大约800gb的数据从NTFS存储设备移动到FAT32设备 (两者都是外部硬盘驱动器),在Windows系统上。

    实现这一目标的最佳方式是什么?

    1. 仅仅使用剪切膏?
    2. 使用命令提示符? ( move )
    3. 编写批处理文件以在给定的时间间隔内复制小块数据?
    4. 使用一些特定的应用程序来为我完成这项工作?
    5. 或者任何更好的主意。..?

    实现这种耗时过程的最安全、最高效、最快速的方法是什么?

    10 回复  |  直到 17 年前
        1
  •  39
  •   Pyrolistical    17 年前

    Robocopy

    您可以重新启动该命令,它将继续。我一直在网络上使用它。也适用于大文件。

        2
  •  6
  •   D'Arcy Rittich    17 年前

    如果可能的话,我会用身体移动坚硬的dsk。

        3
  •  4
  •   benlumley    17 年前

    我发现快速复制对这类事情很好。这是一个gui工具。...

    http://www.ipmsg.org/tools/fastcopy.html.en

        4
  •  2
  •   kemiller2002    17 年前

    如果你必须通过网络移动它,你想在服务器之间使用FTP。Windows文件系统将陷入聊天协议的泥潭。

        5
  •  2
  •   Community Mohan Dere    8 年前

    我找到了 Teracopy 非常快速和方便。据称Fastcopy(作为 suggested by benlumley )它甚至更快,但我没有任何经验。

        6
  •  2
  •   Johannes    17 年前

    尝试使用WinRar或压缩工具。大“文件”的移动速度比许多小“文件”快。 大多数压缩工具允许将存档(zip)文件拆分为多个存档。

    当你打开压缩时,你甚至可以稍微减小一点大小。

        7
  •  2
  •   GabrielB    7 年前

    命令行:xcopy可能是你最好的选择

    命令参考: http://www.computerhope.com/xcopyhlp.htm

        8
  •  1
  •   FallenAvatar    17 年前

    我使用Teracopy并将50+GB复制到128GB闪存驱动器中。
    差不多48小时了。..不得不做两次,因为有力量 打嗝。不得不重新格式化并重新开始。..不是我最喜欢的东西 做。。。

        9
  •  1
  •   Harry    11 年前

    复制文件最快的方法之一是使用 机器人复制术 正如Pyrolistical在上述帖子中所指出的那样。它非常灵活和强大。 如果命令不能直接在dos提示符下运行,请尝试使用powershell选项,如下例所示。

    在使用“robocopy/?”命令之前,必须检查此命令的文档。

    powershell "robocopy  'Source' 'destination' /E /R:3 /W:10 /FP /MT:25 /V" 
    
    /E - Copy subdirectory including empty ones.
    /R - Retry 3 times if failed.
    /W - wait for 10 seconds between retries.
    /FP - include full path name in output.
    /MT - Multi thread.
    /V - verbose output.
    
        10
  •  1
  •   kumar chandraketu    8 年前

    我想评论一条关于多线程的评论,来自@hello_earth,201510131124,但我在Stackoverflow上没有足够的信誉点(到目前为止,我主要在Superuser上发帖):
    多线程通常是 当涉及到将文件从一个存储设备复制到另一个设备时,效率很高,因为顺序读取可以达到最快的吞吐量,使用多个线程会使HDD在同时读取或写入多个文件时发出嘎嘎声和疯狂的研磨声,而且由于HDD一次只能访问一个文件,它必须从一个文件中读取或写入一个块,然后移动到位于不同区域的另一个文件的块,这大大减缓了过程(我不知道SSD在这种情况下会如何表现)。这既低效又可能有害:当磁头在盘片上反复移动以短时间连续到达几个区域时,机械应力要高得多,而不是停留在同一位置来解析一个大的连续文件。

    我在用md5deep批量检查一个装满视频文件的非常大的文件夹的MD5校验和时发现了这一点:使用默认选项,分析是多线程的,因此i7 6700K CPU有8个线程,速度非常慢。然后我添加了-j1选项,意思是1个线程,它继续进行 更快,因为文件现在是按顺序读取的。

    由此产生的另一个考虑因素是,如果文件没有碎片化,传输速度将显著提高,如果它们位于硬盘驱动器的开头,对应于盘片的最外层,线速度最大(这一点与固态驱动器或其他基于闪存的设备无关),传输速度也会更高。

    此外,最初的海报想要一种最安全、最高效、最快捷的方式来实现这样一个耗时的过程,我想说,人们必须选择一种折衷的方式 任何一个 速度/效率, 安全:如果你想要安全,你必须检查每个文件是否被完美复制(通过检查MD5校验和,或使用WinMerge等工具);如果你不这样做,你永远无法100%确定过程中没有SNAFU(硬件或软件问题);如果你这样做,你必须花两倍的时间在这项任务上。

    例如:我依赖一个名为SynchronizeIt!对于我的文件复制目的,因为与大多数类似的工具相比,它具有保留所有时间戳(包括目录时间戳,如Robocopy使用/DCPY:T开关所做的那样)的巨大优势,并且它具有精简的界面,只提供我需要的选项。但我发现有些文件在复制后总是损坏的,在25000字节后被截断(例如,1GB视频的副本有25000个好字节,然后是1GB的00字节,复制过程异常快,只花了一瞬间,这首先引发了我的怀疑)。我在2010年第一次向作者报告了这个问题,但后来他把它归结为硬件故障,并没有三思而后行。我仍然使用SI,但开始彻底检查文件 每次 我制作了一份副本(使用WinMerge或Total Commander);当文件最终损坏时,我使用了Robocopy(用SynchronizeIt损坏的文件,用Robocopy复制后,再用SynchronizeIt再次复制,复制得非常完美,所以它们在NTFS分区上的记录方式让该软件感到困惑,而Robocopy不知何故修复了这个问题)。然后在2015年,在确定了更多关于哪些文件被损坏的模式后,我再次报告了这件事:它们都是用特定的下载管理器下载的。那一次,作者做了一些挖掘,并找到了解释:事实证明,他的工具在复制具有鲜为人知的稀疏属性的文件时遇到了问题,一些下载管理器设置了这个属性,以便在下载多个块的文件时节省空间。他向我提供了一个更新版本,可以正确复制稀疏文件,但尚未在他的网站上发布(目前可用的版本是2009年的3.5,我现在使用的版本是2015年10月的3.6测试版),所以如果你想尝试这个优秀的软件,请注意这个错误,每当你复制重要文件时,在从源中删除之前,请彻底验证每个复制的文件是否与源相同(使用不同的工具)。