【问题标题】:What does Invoke a System Command means in R?在 R 中调用系统命令是什么意思?
【发布时间】:2019-12-26 06:56:43
【问题描述】:

我有以下代码要执行,但我发现system(eval 正在幕后工作。我想知道它有什么作用?我找到了一个资源,但它没有详细解释!

cmd.command.line.input <- "C:\Program Files\R\R-3.4.3\bin\R.exe" CMD BATCH C:\Users\myusername\Documents\R\Send_Outlook_Email.R"
system(eval(cmd.command.line.input),intern=F,show.output.on.console = T,invisible=F)

R 执行但不明白system(eval 做了什么?

https://stat.ethz.ch/R-manual/R-devel/library/base/html/system.html

【问题讨论】:

    标签: r


    【解决方案1】:

    请记住,您始终可以在 R 中使用help(cmd) 来判断命令的作用。例如,help(eval) 包含:

    在指定环境中计算 R 表达式。

    以及更多信息。在您的情况下,您只是传递了一个字符串而没有其他参数,因此它会评估您当前范围内的字符串(就像在 shell 中键入 "mystring" 包括引号一样)并返回它。因此,这里似乎是多余的,因为您可以直接使用 cmd.command.line.input 并 git 摆脱 eval

    help(system) 的标题是

    ‘system’调用‘command’指定的操作系统命令。

    在你的情况下操作系统是 Windows,所以你直接告诉 Windows 运行

    C:\Program Files\R\R-3.4.3\bin\R.exe" CMD BATCH C:\Users\myusername\Documents\R\Send_Outlook_Email.R
    

    Windows 将运行此命令,就像您在 Windows CMD 中并直接键入命令一样。

    【讨论】:

      猜你喜欢
      • 2013-10-19
      • 2012-08-27
      • 1970-01-01
      • 2021-06-02
      • 2011-05-05
      • 1970-01-01
      • 1970-01-01
      • 2012-09-06
      • 2016-05-08
      相关资源
      最近更新 更多