linux cp mtime更改

标签 linux file copy cp

我有一段代码监控一个文件夹。如果文件在那里停留 3 分钟,我的代码将处理它。距离现在是否已经过 3 分钟取决于 mtime。

但是,我发现当我 cp 一个大文件时,比方说 10GB,无法在 3 分钟内完成,代码会中断,因为 cp 在复制时似乎不时更新 mtime.

我是否观察到了 cp 的正确行为?

有解决办法吗?

谢谢,

最佳答案

据我所知,mtime 会在上述修改完成后更新。我认为这样做是正确的。为什么在将文件复制到 时需要知道文件是否已更新?如果你碰巧复制了那个文件,你最终会得到一个不完整的文件,可能没有用。

但如果您确定要这样做,请确保您的复制智能不仅取决于 mtime,还取决于上面答案中建议的文件大小。如果您看到文件大小以任何一种方式发生变化,无论 mtime 说什么,您都可以确定该文件相对于上次处理时间已被修改。

关于linux cp mtime更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15693720/

相关文章:

linux - 在多核或分布式系统上编译程序

linux - ls -lth | awk '{printf.... 获取文件列表并添加标题

c# - 带有空格的路径无法使用 File.CreateText(filePath) c# 创建文件

C++ Socket 检索和发送加密数据

vim - 如何将某些东西从 vim 编辑器复制到 shell 命令行

linux - 递归删除文件和文件夹

c++ - 如何找到锁定 Linux futex 的 C++ 行?

c - 对使用 O_DIRECT 打开的文件执行 'write' 后的用户缓冲区

python - 使用 .loc 设置WithCopyWarning

objective-c - 在 Objective-C 中复制和 move 文件