2011-04-11 38 views
9

我为客户做了一个小应用程序。该应用扫描一个包含几个文本文件的files目录。然后它将每个文件读入一个字符串。每个文件都有一个标题和文章文本。这两部分用管道字符分隔,如下所示:article_title|article_text。该脚本显示打开每篇文章的链接列表。链接的文字与文章标题相同。现在什么是Bud1%@ @ @ @ E%DSDB` @ @ @?

,客户显然已经删除了文章,但看到像波纹图像删除的文件中的条目:
enter image description here

我搜索在网络上的字符串,实际上会发现页面显示相似字符串,例如here这显然是一个删除的博客文章。

这可能是什么原因造成的?该文件是否真的被删除?

P.S.

  1. 客户端已经在内联网上设置了应用程序,无法给我访问,他给我发了一个截图。
  2. 我也不知道他的服务器操作系统是什么。
  3. 我不确定标记此问题的标记,也许可以将标记更改为更好的标记。
+0

它可能是一些随机的Unix的东西?你用什么来扫描目录? 'glob()'给你同样的东西吗? – alex 2011-04-11 05:06:32

+1

哦哇,这是一个有趣的... – Charles 2011-04-11 05:09:37

+0

我使用'$ files = scandir('./ files /');'然后使用'foreach'循环读取文件名。我无法访问客户端的Intranet以进一步探测它。 – 2011-04-11 05:09:54

回答

14

好的,我发现它是什么。一个谷歌搜索结果中指出,this其中包含以下内容:

Bud1 ... @Ђ @Ђ @Ђ @E DSDB `Ђ @Ђ @Ђ @ 

有趣的是,该文件是一个.DS_Storefile!我检查了几个.DS_Store文件,它们都包含了神秘的字符。这些(隐藏)文件是由Mac OS X自动生成的。所以客户端应该从控制台访问文件夹并导致创建隐藏的DS_Store(请记住它是Intranet)。

+0

昨天,客户联系我并证实确实发生了这种情况。 – 2011-04-13 06:38:05

+2

他可能用Finder打开文件夹,Finder会创建这些.DS_Store文件。 – wimvds 2011-04-13 07:09:32

+0

你救了我一天的男人。 – pie6k 2015-05-06 12:20:18

2

这是Finder(Windows资源管理器的Mac等效项)存储有关文件和文件夹的信息。我发现格式的最好的说明在这里:

https://metacpan.org/pod/Mac::Finder::DSStore

格式被描述为:

的.DS_Store文件包含了一系列给人 文件的属性目录中的记录或目录本身(称为)。 这些记录存储在B树中,B树的页面由和 元数据通过“好友分配器”存储在文件中。分配器还提供了一个间接级别,从 小整数到文件偏移量,可能允许块随着它们的增长和缩小而重新定位。

相关问题