我不知道这是不是愚蠢的。但是,重命名是如何工作的。喜欢。假设我重命名了一个100 GB
文件。我可以重命名它,甚至不需要一毫秒(好吧,也许它)。但是,它怎么能这么快呢。它背后的逻辑是什么?重命名是如何工作的?
1
A
回答
2
认为它就像是一个IPv4数据包。它不会更改所有数据,只会更改标题。这与我的想法相似。对于NTFS文件系统,有一个称为MFT(主文件表)的表格,它非常重要,它描述了文件系统中存储的所有数据,如文件名,时间戳等。它只是更新链接到文件的文件名区域,不要等上好几个小时。
1
下面的答案提供了一些关于文件名如何存储的一些很好的见解和参考https://superuser.com/a/511627/173969。重命名操作基本上是对主文件表的简单更改,这就是为什么它不依赖于文件的大小。希望如果有帮助!
1
实际进程取决于使用的文件系统。在大多数系统上重命名通常非常快速(除非存在锁定问题)。
起点是您所关心的目录。它将包含它包含的文件的名称。该名称必须在那里更新。
某些文件系统还将文件名存储在文件系统的文件表中。这个文件名用于在目录损坏时进行恢复。如果出现问题,则会丢失文件在目录结构中的位置,但保留文件本身和文件名。在这样的文件系统中,名称也必须在那里更新。
重命名文件所花费的时间长度完全独立于文件的大小。
相关问题
- 1. 如何重命名工作表
- 2. eclipse工作区:如何重命名工作区
- 3. git作者重命名不工作
- 4. 的QDir ::重命名()不工作
- 5. 如何重命名Clojure中的操作?
- 6. 如何从已保存的工作区中重命名变量?
- 7. Eclipse重命名不能完全工作
- 8. VBA:重命名活动工作表
- 9. 使用xlsxwriter重命名Excel工作表
- 10. 重命名工作表基于INPUT BOX
- 11. 重命名工作项类型失败
- 12. VBA:重命名复制工作表
- 13. postgres重命名数据库不工作
- 14. 重命名URL在PHP不工作
- 15. 使用c#重命名工作表OpenOfficeCalc#
- 16. 如果工作表名称已存在,Excel重命名工作表
- 17. 如何重命名woocommerce订单操作
- 18. 如何让DevExpress“重命名变量”在VS 2008中工作?
- 19. jQuery事件命名空间是如何工作的
- 20. cakePHP命名约定是如何工作的?
- 21. 这个命名变量是如何工作的?
- 22. '出口'命名约定 - 它是如何工作的?
- 23. .net 4.0 [命名]元组如何工作?
- 24. PHP重命名()工作在终端,而不是在服务器
- 25. 单击按钮时重命名工作簿和工作表
- 26. 跟踪工作簿和工作表重命名
- 27. 重命名redis的配置命令后,前哨工作失败
- 28. R XLConnect readWorksheet:重命名每个工作表中的列名
- 29. 将仍在队列中的工作重命名为Sidekiq工人是否安全?
- 30. htaccess的重写是如何工作的