无法访问的文件的 st_blocks 和 st_size 值不一致

无法访问的文件的 st_blocks 和 st_size 值不一致

我有一个小文本文件(一些元数据已编辑)

-rw-r--r--  1 ****  ****  17198 Sep 29  2019 230999.txt

但无法查看

% cat 230999.txt
cat: 230999.txt: Attribute not found

我不确定缺少什么属性。这是一个简单的文本文件。cpmv返回相同的错误。

统计显示st_blocksst_size值似乎不一致:

% stat -f 'st_size=%z st_blocks=%b st_blksize=%k' 230999.txt
st_size=17198 st_blocks=0 st_blksize=4096

我读过的所有内容都涉及st_size并且st_blocks通常使用st_blksize.这告诉我文件大小,但表示没有为其分配块。

我如何访问该文件?

更新回应评论:

我不熟悉,strace所以我做了以下操作:

sudo dtruss cat 230999.txt
...
open("230999.txt\0", 0x0, 0xFFFFFFFFE4CFABE5)        = -1 Err#2
write_nocancel(0x2, "cat: \004\b\0", 0x5)        = 5 0
write_nocancel(0x2, "230999.txt\b\0", 0xA)       = 10 0
write_nocancel(0x2, ": \b\0", 0x2)       = 2 0
write_nocancel(0x2, "No such file or directory\n\b\0", 0x1A)         = 26 0
close_nocancel(0x1)

(由于评论破坏了格式,因此保留为更新)

相关内容