当前源文件的完整文件名

在许多(解释的)编程语言中,在获取文件时设置变量,以便某些代码可以确定加载文件的文件名.例如.在
ruby中,加载文件时设置变量__FILE__.

R中有这样的功能吗?有没有办法让R代码确定从哪里加载?

例:

main.R:

source("foo.R")

/home/bar/foo.R:

print(FULL_FILENAME)

我有什么替换FULL_FILENAME使其打印:

[1] "/home/bar/foo.R"

没有硬编码源中的任何文件名?

最佳答案 你可以在你的文件顶部放置一个hack
provided by Gabor

this.file <- parent.frame(2)$ofile

如果要提取目录的名称,可以执行以下操作:

this.dir <- dirname(this.file)

根据我对事物的理解,采购文件会创建两个父环境.外部(向上两步)包含有关源代码所在文件的信息.

点赞