Applescript - 设置永久全局变量

问题描述 投票:0回答:1

我是 applescript 新手。我想创建一个永久全局变量,以后可以从其他 applescript 中读取和修改它。

我在脚本编辑器中创建了一个新的applescript,并输入了以下代码:

global myVariable
set myVariable to "text"

我通过单击脚本编辑器中的运行按钮来运行 applescript。该脚本运行良好。我的理解是,这个变量现在将是永久的,因此从新的 applescript 运行

log myVariable
应该返回
"text"

但是,我收到了错误

error "The variable myVariable is not defined." number -2753 from "myVariable"

如何创建永久变量,永久存储在我的计算机上并可从任何 applescript 访问?

此外,有没有办法记录或查看我创建的所有全局变量?

谢谢你

macos scripting applescript
1个回答
0
投票

如果您愿意,您可以使用脚本对象和属性来执行此操作。首先,使用以下代码在脚本编辑器中创建一个简单的脚本:

property gvar1 : "a value"
property gvar2 : 27

保存在某处(例如:

/Users/yourname/globalASVariables.scpt
)。该文件将保留您为属性设置的值。

现在,每当您想在脚本中访问这些变量时,请像这样编写代码:

set globalVars to load script "/Users/yourname/globalASVariables.scpt"
log globalVars's gvar1
log globalVars's gvar2
set globalVars's gvar1 to "something"
log globalVars's gvar1
-- this line saves any changes you made to the variables
store script globalVars in "/Users/yourname/globalASVariables.scpt" replacing yes

globalVars
是包含这些常见属性的脚本对象。它们将一直存在,直到您重新编译第一个简单脚本。如果您想更改文件中存储的变量,只需使用
store script
行即可。

也可能有一种方法可以使用脚本库来做到这一点,但我需要进行试验。

© www.soinside.com 2019 - 2024. All rights reserved.