OS X Automator:自动将文本插入到显示的文本提示中

时间:2016-05-18 23:28:12

标签: macos applescript vpn

我已经购买了Shimo - 适用于Mac OS X的VPN客户端 - 到目前为止我对它非常满意。

但是,我使用VPNBook.com服务,可以免费访问某些VPN服务器。问题是,每24小时左右,所有免费帐户的密码都会发生变化,用户名保持不变。

Shimo提供了为每个VPN连接插入用户名的选项,因此唯一需要输入的是密码。

我有一个可执行函数,它返回读取并返回当前密码。因此,如果我在终端中运行vpnpw,它会打印当前的工作密码。

整件事看起来像这样:

Returned VPN password

我的计划是实现一个脚本,当Shimo要求输入密码时,会自动调用vpnpw并将其插入提示符。 Shimo提供触发器,例如在尝试建立连接时运行shell脚本或应用程序。所以这应该会让事情变得更容易。

以下是提示符的外观截图(对不起德语):

Password prompt

最好的方法是什么?我想在每次显示提示时都使用Automator运行vpnpw。但是,我对Applescript或Automator一般没有经验。非常感谢帮助,因为我希望自动完成整个过程。

仅供参考,我已附上我的脚本,返回VPNBook.com under this link的当前VPN密码。

1 个答案:

答案 0 :(得分:1)

你应该可以做这样的事情......

on run
    set thePwd to do shell script "vpnpw"
    set the clipboard to thePwd
end run

然后我认为您将不得不求助于GUI脚本

tell application "System Events"
    keystroke "v" using command down
end tell

您需要在系统首选项中启用UI脚本才能生效。你可以看到here

的方式/地点

所有的说法和完成,你的整个脚本看起来都像这样...

on run
    set thePwd to do shell script "vpnpw"
    set the clipboard to thePwd

    tell application "Shimo" to activate -- You'll have to check this code, I don't have Shimo to know if this will work

    do shell script "sleep 1" -- just to allow time for shimo to become the front app before the paste

    tell application "System Events"
        keystroke "v" using command down -- paste the clipboard
    end tell
end run