Applescript 搜索自定义属性

Applescript 搜索自定义属性,applescript,Applescript,我正在使用AppleScript搜索我的一组联系人,其中包含一个特定(自定义)属性 这是我的密码: tell application "Address Book" set allPeople to every person whose last name = "CERTAIN_LAST_NAME" get properties of item 1 of allPeople end tell 具体的姓氏只是我认识的一个拥有特定财产的人 以及(修剪后的)输出: 我想找到所有包含属性

我正在使用AppleScript搜索我的一组联系人,其中包含一个特定(自定义)属性

这是我的密码:

tell application "Address Book"
    set allPeople to every person whose last name = "CERTAIN_LAST_NAME"
    get properties of item 1 of allPeople
end tell
具体的姓氏只是我认识的一个拥有特定财产的人

以及(修剪后的)输出:

我想找到所有包含属性
UID
且值为
{MY\u EMAIL\u ADDRESS}:some\u number
的人。我对OSX和AppleScript非常陌生,所以我不确定该怎么办。我搜索了一种基于自定义属性筛选联系人的方法,包括:

tell application "Address Book"
    set allPeople to every person whose UID = "{MY_EMAIL_ADDRESS}:426"
    get properties of item 1 of allPeople
end tell
但这给了我一个错误:

my_script.scpt:69:72: execution error: The variable UID is not defined. (-2753)

我感谢您在这个问题上的帮助

找不到UID的原因是它不作为字段存在,即使在数据中也是如此。如果您查看您提供的代码片段的底部,它会显示“END:VCARD”。如果您通过剪下的文本进行查找,应该会看到“vcard:”开始:vcard“

包含此文本的字段是
vcard
,您可以在其中进行搜索

tell application "Address Book"
    set allPeople to every person whose vcard contains "UID:{YOUR_EMAIL_ADDRESS}:426"
    get properties of item 1 of allPeople
end tell

当然,我没有你的值,但我能够在我自己的联系人中包含已知UID值的卡片上进行搜索。

UID
不是
Address Book
理解的命令,这就是为什么AppleScript将其视为变量并生成错误,因为没有定义具有该名称的变量。可能是“id“有效。那么我如何基于
UID
属性进行搜索呢?@Zero这是从Facebook导入的一个雅虎联系人,所以这可能是
tell application "Address Book"
    set allPeople to every person whose vcard contains "UID:{YOUR_EMAIL_ADDRESS}:426"
    get properties of item 1 of allPeople
end tell