使用 sudo 更改 RScript 终端命令的默认路径

使用 sudo 更改 RScript 终端命令的默认路径

我正在尝试从终端执行 Rscript,但只能通过添加命令才能使它们工作sudo。运行 --verbose,我能够将问题缩小到用于执行命令的默认路径的差异:

username@user1: sudo Rscript --verbose -e 2+2
running
  '/usr/lib/R/bin/R --no-echo --no-restore -e 2+2'

[1] 4

这是预期的输出。

这里,没有 sudo,调用 Rscript 时目录会发生变化:

username@user1:~$ Rscript --verbose -e 2+2
running
  '/opt/rstudio/latest/bin/R --no-echo --no-restore -e 2+2'

Rscript execution error: No such file or directory

当我第一次切换到 Linux 时,我确实在该目录中安装了 rstudio 的一个实例,所以我相信问题在于我在某处更改了默认 PATH。我只是不知道在哪里或如何找到它。典型的从失败中学习的时刻。

尝试修复:我已完全卸载 R 和 RStudio,以及 RStudio 首选项文件(位于~/.local/share/rstudio)。重新启动系统。仅重新安装了 R,问题仍然存在。

根据评论进行编辑:

type Rscript

Rscript 是 /usr/bin/Rscript

echo $PATH

在 /opt/rstudio/latest/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin

ls -l /opt/rstudio/latest/bin/R

ls:无法访问'/opt/rstudio/latest/bin/R':没有该文件或目录

嗯,这很有帮助!所以我只需要删除我添加到路径中的这些多余的废话。

相关内容