【发布时间】:2011-07-10 00:27:40
【问题描述】:
更新:
嗯——尽管这个问题没有得到“回答”,但我还是掏空了口袋买了一块 SSD。反正我的 ramdisk 软件的成本也差不多。我不再对这里的答案特别感兴趣,所以我将其标记为“已回答”并继续我的生活。
感谢您的帮助。
我有一个程序正在将文件写入 ramdisk(在 Windows XP 中),一旦它完成执行,我需要将它的数据从 ramdisk 复制到我的硬盘驱动器上的目录。显然,在 ramdisk 中,空间是有限的,我需要在运行之间尽可能多地释放 ramdisk 上的空间。简单的解决方案是将我的程序在ramdisk上生成的data文件夹复制到硬盘上的某个位置,然后递归地从ramdisk中删除“data”文件夹。
但是,该解决方案存在问题;我的程序查看文件系统和文件名以确保它不会覆盖文件(目录中最新的数据文件是 006.dat,因此它将写入 007.dat 而不是覆盖任何内容)。写入数据后,我不能只删除文件,因为当我将数据复制回硬盘时,它需要完整的文件系统来记录数据,而不会覆盖旧文件
我想要一个简单的小 Windows 批处理脚本,我可以在我的程序完成将数据文件写入 ramdisk 后执行它。这个批处理脚本应该将 ramdisk“数据”文件夹复制到我的硬盘并从 ramdisk 中删除所有文件,然后它应该按原样重新创建文件系统,但包含所有零字节文件。
我该怎么办?
【问题讨论】:
-
我会完全避免使用 ramdisk,让应用程序直接写入硬盘中的目录。如果速度是问题,请使用 SSD。
-
@PA - SSD 将是这里的最佳解决方案,但我没有钱:P。我花了一段时间尝试编写我询问的批处理脚本,它太复杂了,而且有自己的问题。也许写入网络驱动器或火线驱动器会是一个更好的解决方案......磁盘IO在这里杀死我的实时系统......
标签: windows scripting batch-file ramdisk