📅  最后修改于: 2023-12-03 14:52:32.469000             🧑  作者: Mango
在 R 中,我们经常需要获取当前执行脚本的路径,以便加载数据文件、保存输出结果等操作。本文将介绍两种获取当前路径的方法。
getwd()
函数getwd()
函数可以获取当前 R 工作目录的路径,也就是运行脚本时所在的目录。下面是一个示例:
my_path <- getwd()
print(my_path)
上面的代码将当前路径保存在变量 my_path
中,并打印该路径。如果你在命令行中运行脚本,将会输出类似于以下的结果:
[1] "/Users/yourusername/yourproject"
注意,getwd()
函数返回的路径末尾不包含斜杠 /
。
basename()
和 normalizePath()
函数如果需要获取当前执行脚本的路径,可以使用以下代码:
my_path <- dirname(rstudioapi::getSourceEditorContext()$path)
my_path <- normalizePath(my_path)
my_path <- basename(my_path)
print(my_path)
使用 rstudioapi::getSourceEditorContext()$path
获取当前执行脚本的路径,然后使用 dirname()
函数获取该路径的上级目录。接下来使用 normalizePath()
函数将路径标准化处理,最后使用 basename()
函数获取路径的最后一级目录名,即当前执行脚本的路径名。
如果你在命令行中运行脚本,将会输出类似于以下的结果:
[1] "yourproject"
本文介绍了两种获取当前脚本路径的方法:使用 getwd()
函数和使用 basename()
和 normalizePath()
函数。前者比较简单,但只能获取工作目录,而后者可以获取当前执行脚本的路径,较为精确。需要注意的是,如果你在 RStudio 中运行脚本,推荐使用第二种方法获取当前路径。