如何删除文件的@/扩展元数据?

All*_*one 3 ls file-permissions macos

我知道@中的

-rwxrwxrwx@ 1 me  staff     0 16 Mai 10:55 myLog.txt
Run Code Online (Sandbox Code Playgroud)

意味着附加了一些扩展的元数据。

美好的。我不感兴趣。

我需要知道如何删除它?

我在一些 php 脚本的开发阶段一次又一次地得到这个。我的日志文件一次又一次被 @ 阻塞,我的脚本无法再写入日志文件。到目前为止我唯一的解决方案:删除文件并重新创建它并重新修改文件的权限,这当然很糟糕。

也许你能告诉我是什么原因造成的?这似乎完全是随机的。我可以停用此阻止@

编辑和解决方案:

感谢评论,我现在发现以下命令删除了“@”

xattr -d com.macromates.caret filename
Run Code Online (Sandbox Code Playgroud)

下一个命令阻止 Textmate 再次添加它(在运行命令之前关闭 Textmate)。

defaults write com.macromates.textmate OakDocumentDisableFSMetaData 1
Run Code Online (Sandbox Code Playgroud)

来源和更多信息在这里

Dan*_*eck 6

扩展属性很可能是由您的文本编辑器添加的。TextMate 使用它们来存储例如插入符号位置。禁用该功能以完全摆脱未使用的扩展属性。

您可以使用删除扩展属性

xattr
Run Code Online (Sandbox Code Playgroud)

并使用列出它们

ls -l@
Run Code Online (Sandbox Code Playgroud)