find's - cnewer 在 NTFS-3g 上损坏?

find's - cnewer 在 NTFS-3g 上损坏?

将存档提取到错误的位置后,我以为我会删除之后创建的所有内容,但find . -cnewer archive.7z给出了错误的结果。

touch因此,我通过ing 三个文件并更改它们ctime来进行受控测试,mv以便它们的顺序相反:

$ stat --printf '%n mod: %y chg: %z\n' oldest middle newest 
oldest mod: 21:57:13.935530400 chg: 22:05:48.369608300
middle mod: 21:58:23.939659500 chg: 22:05:09.911614500
newest mod: 21:59:33.943477100 chg: 22:04:55.869205500

(为了易读性而进行了修剪)

现在让我们测试-newer一下-cnewer

$ find . -type f -newer middle 
./newest

好的。

$ find . -type f -cnewer middle 
./middle
./newest
./oldest

不行。

fstabmount:

UUID=46A8DB5D20C177B0 /mnt/stuff  ntfs  rw,uid=ariel,fmask=027,dmask=027 0 0
/dev/sda1 on /mnt/stuff type fuseblk (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)

答案1

阅读find联机帮助页的描述-cnewer

-cnewer文件

文件的状态上次更改最近比文件曾是修改的

强调我的。

所有文件都是22:00之前修改的,22:00之后更改的,所以都是改变了在其中任何一个被修改的。因此它们都被列出来了。

所以结果看起来是正确的。

这是否-cnewer有用是另一个问题!

相关内容