【问题标题】:Need help getting bash/batch to work for R on Windows 10需要帮助让 bash/batch 在 Windows 10 上为 R 工作
【发布时间】:2019-09-04 03:29:20
【问题描述】:

我正在尝试让批处理模式在 Windows 10 上适用于 R。最终目标是在外部服务器上批量运行一些 R 代码的多次迭代。

我在我的 cmd 提示符下成功安装了 bash(Windows 10 的 unix 包装器?)。我正在阅读有关使用批处理的教程。我不确定我是否希望它通过 cmd 或直接通过 r 代码运行? https://github.com/gastonstat/tutorial-R-noninteractive/blob/master/02-batch-mode.Rmd

通过本教程,我正在使用简单的代码 myscript1.R 测试批处理/bash。然后我在 cmd promp/bash 中输入的代码如下所示:

R CMD BATCH "F:/Google Drive/Documents/batch/myscript1.R" "F:/Google Drive/Documents/batch/myscript1-output.R"

目前我在 cmd/bash 中最接近的是在正确的文件夹中创建了一个输出文件但为空白,我被告知 \usr\lib\R\bin\BATCH: cannot create myscript1-output.R: Permission拒绝。

我已尽一切可能向所有用户授予完全权限,但不确定发生了什么。任何知道如何在 R for windows 中使用批处理模式或 bash 的人都可以告诉我吗?

谢谢

【问题讨论】:

  • 不需要指定输出文件;它会自动将日志写入与您的脚本相同的目录。如果你省略它会发生什么?
  • 同样的事情 - 创建了一个 myscript1.Rout,但它是空白的。 /usr/lib/R/bin/BATCH: 60: /usr/lib/R/bin/BATCH: 无法创建 myscript1.Rout: 权限被拒绝
  • /usr/lib/R/bin 是 linux 上的受保护目录,这就是它无法在此处写入文件的原因。您是否尝试从该目录中运行脚本?如果是这样,那将解释错误。尝试使用cd 导航到项目文件夹
  • 部分工作!显然我需要提供 R.exe 的位置,然后放置 CMD BATCH,然后放置我的 R 脚本的目录:“C:\Program Files\R\R-3.5.3\bin\x64\R.exe”CMD BATCH“ F:\Google Drive\Documents\Academics\GA Tech\Agony\wiki\batch\myscript1.R"

标签: r bash batch-processing windows-subsystem-for-linux


【解决方案1】:

感谢菲尔在这里回答。我不需要通过 Ubunto 使用“Bash”......我想。

相反,我只需要通过常规 cmd 调用 CMD BATCH,其中包含三个部分:

  1. 我的R.exe所在目录:“C:\Program Files\R\R-3.5.3\bin\x64\R.exe”(替换版本)
  2. CMD 批处理
  3. 项目文件/脚本目录:“F:\project_folders_batch\myscript1.R”
  4. 所需输出的目录(因此它不默认为 C/users/username)。在这种情况下,我输出到与脚本相同的文件夹:“F:\project_folders_batch\myscript1-output.R”

另外,如果您要输出绘图或任何东西(我曾经),请在执行此操作之前继续并 cd(更改目录)到项目文件夹。最终结果分两步:

  1. cd /d "F:\projectfolder\batch"
  2. "C:\Program Files\R\R-3.5.3\bin\x64\R.exe" CMD BATCH "F:\projectfolder\batch\myscript1.R" "F:\projectfolder\batch\myscript1-输出.R"

还要注意您的防病毒软件...它多次阻止访问。

【讨论】:

  • 很高兴你让它工作。如果您完全习惯 Linux,或者想学习,您可能会发现使用 WSL 中的终端比使用 CMD 更有用,但至少您有所收获!
猜你喜欢
  • 2017-09-22
  • 2015-02-11
  • 2011-02-25
  • 1970-01-01
  • 2021-09-19
  • 2020-11-15
  • 1970-01-01
  • 2014-10-10
  • 1970-01-01
相关资源
最近更新 更多