【发布时间】:2015-07-14 13:38:44
【问题描述】:
是否有可能将执行的行或基本上是脚本复制到工作目录中?
所以我的正常情况是,我有一个独立的脚本,它只需要在工作目录中获取,他们会做我需要的一切。 几个月后,我对这些脚本进行了更新,我希望在执行源代码时获得脚本的快照...
所以基本上是file.copy(ITSELF, '.') 或类似的东西。
【问题讨论】:
-
也许你可以稍微改变你的方法并使用一个小的帮助脚本来做类似
file.copy("myscript.r", paste0("snapshot_", Sys.Date(),"_myscript.r")); source("myscript.r") -
我猜会起作用,但是没有获取它自己的文件名和路径的功能吗?我以为我在 python 中使用了类似的东西,但这是使用命令行。在那里我可以得到第一个参数(文件名)。我想知道来源是否不能返回这样的东西......
-
如果 Python 中有这样的函数,我不会感到惊讶,因为 Python 在类定义中提供了有用的元功能,例如
__self__属性。我不知道您在 R 中描述的上述内容 (file.copy(ITSELF, '.')),但其他人可能有更好的解决方案。 -
我刚刚通过link 找到了一个提示,但他们已经说它有点不稳定,但目前它似乎有效。所以建议使用
sys.frame(1)$ofile。但老实说,我不明白这一点,因为 sys.frame 无法以某种方式访问。
标签: r