gpt4 book ai didi

ruby 代表浪漫?如何从自身更新脚本

转载 作者:数据小太阳 更新时间:2023-10-29 07:37:13 25 4
gpt4 key购买 nike

当我使用我的极客能力来“浪漫”时,我的妻子很喜欢它,所以我想在她的 Mac 上安装一个 ruby​​ 脚本,它可以全天向她发送我的引述和小笔记。我已经知道我将使用 GeekTool 在后台运行脚本,我将使用 growlnotify 来显示消息。现在我需要的是一种从网络更新脚本的方法,以防我更改它。除了如何与控制台交互之外,我对 ruby​​ 基本上一无所知。

我有两个目标:1) 有一个包含消息的 XML 文件。这需要可以从互联网上更新,但要在本地进行,以防她没有网络连接。2) 从 Internet 更新脚本本身,以防我发现错误或想要改进它。

现在我知道,如果我愿意,我显然可以在她的 Mac 上手动更新脚本,但我认为这是学习一些更高级的 ruby​​ 的好方法。

优先级 1 是 XML 文件,如果它发生变化,能够下载新版本。我可以使用哪些 ruby​​ 东西来下载文件并将其保存到本地某个地方?

我以前用过 hpricot,这是个好方法吗?

注意:我妻子的 mac 是 Macbook,运行 Leopard(但可能是 10.4,不是 100% 确定)。

编辑

如果有人对脚本的第一个版本感兴趣,可以找到它 here

附注--> 脚本的第一个版本实际上并没有更新自身,它只是更新了 messages.xml 文件,仅此而已。

最佳答案

require 'net/http'

Net::HTTP.start("your.webhost.com") { |http|
resp = http.get("/messages/messages.xml")
open("messages.xml", "wb") { |file|
file.write(resp.body)
}
}

类似的东西应该可以工作。您也可以下载 Ruby 脚本,然后调用。

exec("ruby script2.rb")
#no further lines in script1 will execute

关于 ruby 代表浪漫?如何从自身更新脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1860566/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com