在 macOS 上,我正在运行一个 shell 脚本,用于touch
创建一个没有扩展名的空文件。使用同一脚本创建的文件随机具有不同的种类,即“文档”、“Unix可执行文件”、“TextEdit.app文档”,它们之间没有明显差异。无扩展属性
/usr/bin/touch /Volumes/SDrive/complete/.hashes/"${1}"___"${9}"
变量包含文本...
示例文件名:“NOVA.S48E14.Particles.Unknown.720p.WEB.h264___221a636b1f174def7a72d90a9c9d4e9af6aab6ee”
我很好奇为什么使用命令创建时没有扩展名的空文件会被解释为除 Kind“Document”之外的任何内容touch
,以及是否有一种方法可以在不使用扩展名的情况下指定?
我无法在任何其他操作系统上对此进行测试。
答案1
很好的问题。不幸的是,似乎没有记录的答案。
文件kind
据说是一个“标签”,并且似乎是一个元数据相关的元素kMDItemKind
场地。其主要目的似乎是对来自 的搜索结果进行分类Spotlight
。
但也许对你的问题最相关的答案是没有“为什么”:文件kind
标签不是由touch
,而是由苹果选择不透露的其他进程创建的。您的结果(可重复)是初步证据有证据表明,至少就创建的文件而言touch
,kind
标签是 Apple 进程的任意产物,与创建的文件没有任何关系。