在applescript中读取plist字符串

时间:2015-02-13 14:49:14

标签: string variables applescript plist

我刚刚开始修补applecript。请对初学者有一点耐心......这应该是非常基本的,但到目前为止我找到的所有解决方案都太复杂了。

我的user.plist文件看起来像这样

<?xml version=1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple/DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
    <array>
        <dict>
            <key>rasp</key>
            <string>username</string>
            <key>192.168.178.203</key>
            <string>ip</string>
            <key>nhnhnh3</key>
            <string>password</string>
    </array>
</plist>

我想把这些字符串读成一个AppleScript。 如果它说&#34; insert_pw_here&#34;,我想在这个脚本中读取并插入user.plist中的pw-string

do shell script "pmset displaysleep 15" password "insert_pw_here" with administrator priviliges

基本上,我没有直接将密码,用户名等直接放入苹果脚本中,而是计划创建一个.plist文件,所有的苹果脚本都可以从中收集所需的信息。因此,如果我改变任何东西,我就不得不改变几个脚本。这应该很简单,但我无法弄明白(再一次:刚开始使用AS)。

提前致谢:)

1 个答案:

答案 0 :(得分:0)

首先,当您使用管理员权限执行do shell脚本时,您实际上是在使用pmset命令,因此不需要密码。

其次,请考虑加载脚本,并从标准添加中存储脚本命令,这样,您可以将您的属性改为脚本对象,这样更容易编程。您还可以在AppleScript语言指南中阅读有关脚本对象的信息。我很抱歉,没有办法克服属性列表文件的问题,来自applescript,但我认为一个名为plist buddy的app / program,可以设法为你存储/检索plist值。您甚至可以使用plutil命令,并首先将plist转换为xml,然后使用XQuery返回值。

HTH