从R运行.bat文件的状态为2

时间:2016-12-15 22:25:56

标签: r batch-file

我正在尝试运行一个.bat文件,当我双击它(Windows操作系统)时运行完美,但是当我尝试在R中运行它时失败

 com <- "C:\\SASLocal\\RUN3614\\56a8c11b-84b2-4af7-a155-01190936b1c1\\M1_superGOtest.bat"

 system(com)

我收到了had status 2

的消息

仅仅是一个FYI,这会触发一个SAS程序,我需要在SAS中运行,因为它用于SAS和R之间的比较。

1 个答案:

答案 0 :(得分:1)

在Windows中,要从命令行运行批处理文件,您需要调用命令行解释器,命令提示符或PowerShell,将批处理文件作为参数传递。

.bat脚本本身就像一个.R脚本,在可执行文件运行之前不会执行任何操作(即 Rscript.exe,R.exe,Rcmd.exe,Rterm.exe )在这种情况下, cmd.exe powershell.exe

# COMMAND PROMPT
system('cmd /c "C:\\SASLocal\\RUN3614\\56a8c11b-84b2-4af7-a155-01190936b1c1\\M1_superGOtest.bat"')

# POWERSHELL
system('powershell -c & "\'C:\\SASLocal\\RUN3614\\56a8c11b-84b2-4af7-a155-01190936b1c1\\M1_superGOtest.bat\'"')