使用system()命令从RStudio访问命令行(cmd)

时间:2017-04-01 16:23:52

标签: r machine-learning

我想使用system()命令从cmd访问命令行(RStudio)。但是当我将命令放在R脚本中时,会显示错误并指示R不接受语法。命令是:

system("C:\Program Files\ANSYS Inc\v150\ANSYS\bin\winx64\ansys150.exe" -p ane3fl -dir "C:\Users\hamdani\Documents" -j "hamid" -s read -l en-us -b -i "C:\Users\hamdani\Documents\Plane Stress Bracket.txt" -o "C:\Users\hamdani\Documents\fichier.out")

错误是:

Error: '\P' is an unrecognized escape in character string starting "'"C:\P"

当我将命令直接放在系统命令中时,它运行得很好:

"C:\Users\hamdani\Documents" -j "hamid" -s read -l en-us -b -i "C:\Users\hamdani\Documents\Plane Stress Bracket.txt" -o "C:\Users\hamdani\Documents\fichier.out"

1 个答案:

答案 0 :(得分:0)

问题在于您必须为R输入字符串的方式。您的命令包括可执行文件和文件的路径,因此命令的一部分是:

system("C:\Program Files\ANSYS Inc\v150\ANSYS\bin\winx64\ansys150.exe" ...

但是R使用反斜杠\来表示转义序列,专门使用\n等字符来表示换行符。由于\表示转义序列即将开始,如果你想要一个反斜杠字符,你必须转义转义,即在字符串中获得单个反斜杠字符的方法是键入\\。您的命令包含许多反斜杠。您需要将所有这些加倍以获得此类错误。

相关问题