跟进这个问题:
来自茶匙的回答: 我相信比上述答案更简单的方法: Rscript -e 'renv::run("/path/to/myscript.R")' 它将从基本路径中获取 renv 环境。您还可以使用项目参数指定环境。
有没有办法使用变量来定义/path/?如果我有许多脚本引用相同的路径?
我尝试为 /path/ 定义一个变量,但是由于 bash 中的变量在单引号内不起作用,我不知道如何使其工作。
例如,说:
$SRC_DIR="/home/user/Rscript"
这些不起作用:
Rscript -e 'renv::run("$SRC_DIR""/to/myscript.R")'
Rscript -e 'renv::run("${SRC_DIR}""/to/myscript.R")'
Error: unexpected string constant in "renv::runn("${SRC_DIR}""/to/myscript.R""
我刚刚测试过,这对我有用:
Rscript -e "renv::run(\"${SRC_DIR}/to/myscript.R\")"
我们可以转义 R
\"
中的引号(仅转义内部引号,而不转义外部引号),然后构建一个字符串,并在其中使用 SRC_DIR
sytnax 注入 ${}
。