问题标签 [mdls]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - 将 mdls 的输出转换为 NSDictionary
在 CSV 文件 ( ) 的终端中运行 BSD 的元数据工具$ mdls foo.csv
将产生如下输出:
我想在代码中捕获此输出并将其转换为 NSDictionary。
有没有更优雅的方法?
macos - MDLS | 元数据 | 无法获取 Illustrator 文件的 kMDItemVersion
我正在尝试使用显示文件版本,mdls -name kMDItemVersion filepath
但它正在返回null
.
如果我简单运行mdls filepath
,则不会为该文件显示 kMDItemVersion。
奇怪的是我可以通过右键单击并选择获取信息来查看版本信息。
通常我会使用 kMDItemCreator 但与大多数其他应用程序不同,.ai 文件似乎不会添加特定的元数据。
遗憾的是我没有足够的积分来发布照片。重要的是要知道 .ai 文件在获取信息 > 常规下清楚地显示以下内容。
这正是我所追求的信息。
链接到下面的图片。非常感谢任何帮助。
http://i.stack.imgur.com/3DtNt.png
http://i.stack.imgur.com/iJc2x.png
macos - 在 OSX 上更改文件的“添加日期”属性
我一直在使用终端更改文件的“添加日期”属性,但没有成功。
我正在做的是:
显示文件的属性:
mdls 文件名
显示“添加日期”属性:
xattr -p "kMDItemDateAdded" 文件名
更改:
sudo xattr -w "kMDItemDateAdded" "201111111111.11" 文件名
第三条指令不起作用!而触摸具有相同日期值的文件确实会更改修改日期。
我正在运行优胜美地。来自社区的任何想法?
image - macOS 图像中的“来自哪里”存储在哪里?
使用 Safari 和 macOS 从 Web 下载的图像具有可从带有 Get Info 的 Finder 获得的信息。例如,“来自哪里”可以是原始图像的 URL。是与图像一起存储的还是?
exiftool image.jpg
不显示信息。
答案在@Gordon Davisson 的两条评论中。其他回应也很有帮助。出于我的目的mdls
,它很有用,并xattr
提供了额外的相关信息。虽然我仍然不太了解信息的存储位置,但我认为可以肯定地说它没有嵌入文件本身,但 macOS 和 Windows 可以跟踪信息。
bash - 在 macOS 终端中,“ls | mdls”命令仅适用于主目录
我想要macOS 上我的下载文件夹的所有添加日期元数据的列表。我从http://forums.ilounge.com/applescripts-itunes-mac/100189-mdls-command-tiger.html找到了以下代码(适用于 macOS 终端),但它仅适用于主目录。添加不同的目录作为修饰符不起作用,并且使用 cd 不起作用。当我做这些事情时,它仍然返回主目录的结果。如何让它适用于我的下载文件夹,或者我应该采取其他方法吗?如果那更好的话,我也涉足过 AppleScript。
在Recursive file list of all files, list contains path+name, type, size, creation data, modify date 中有一个类似的问题,但我知识渊博,无法确定是否可以根据我的目的进行调整。
macos - “$ mdls -recursive”是否存在?
该mdls
命令可以在 macOS 终端中递归使用吗?是否有替代方法可以让我获得每个文件的列表以及所有mdls
信息?ls
可以选择给我一些,但不如mdls
.
macos - 在 zsh 中包含破折号的通配文件名中的解析错误
当我mdls -name kMDItemFSName -name kMDItemDateAdded -raw *
在包含目录的文件夹中运行 zsh 时- Java Code
,我收到以下错误:
mdls: unrecognized option `- Java Code'
我怎样才能解决这个问题?我尝试使用"*"
,但它根本没有 glob。
swift - Swift - 如何修改文件元数据,如 kMDItemDisplayName?
我试图找到一种方法来更改文件的元数据属性(那些前缀为“kMDItem”的,由 列出mdls
),但我没有找到任何解决方案。时间
起初,我尝试过使用FileManager.default.setAttributes(_attributes:ofItemAtPath:)
,但这种方法只给了我几个选项,它只给了我修改文件的能力modification date
,creation date
等等posix permissions
,这还不够。
然后,我尝试使用NSMetadataItem
withsetValue(_value:forKey:)
函数来更改元数据值,这是我的代码:
我注意到setValue(_value:forKey:)
通过反复得到这个返回错误在这里没有做任何事情:error: Execution was interrupted, reason: EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)
。
最后,我在 StackOverflow 上红了这篇文章,这导致了我的这段代码:
执行后,我用mdls
andxattr -l
查看结果,发现这只是给文件添加扩展属性的解决方案,元数据没有改变,只是成功添加了名称为“kMDItemDisplayName”的扩展属性。
结果不是我想要的(我只是使用 kMDItemDisplayName 作为我的问题的示例),我不只是想找到一种将扩展属性添加到文件的方法,而是一种编辑列出的属性的方法mdls
。也许没有解决方案?或者也许我应该以完全不同的方式来做?