system2输出在函数内不起作用

问题描述 投票:0回答:1

我有一个可执行文件(编译为FORTRAN),它使用终端为用户请求输入,输出转到不同的文件(例如,out1.txt,out2.txt)。我创建了一个R函数,为可执行文件生成响应文件。然后我可以使用我的响应文件来获取所有输出。例如,如果我从命令行pm.exe < pm.resp运行,我将获得所有输出(例如,1.txt,2.txt等)。现在我想将整个过程合并到R中。

如果我从R控制台system2("pm.exe", wait = FALSE, invisible = FALSE, stdin = "pm.resp")运行,我得到我的输出没有问题。但是如果在R函数中使用该行,那么我没有得到任何输出。

r
1个回答
0
投票

好吧,这可能没有帮助任何人,但经过很多痛苦后才意识到问题是什么。具有system2()的功能是我正在构建的包的一部分。另外,我正在运行一个脚本,该脚本正在加载没有system2()命令的函数的先前版本。因为这个功能在我的全球环境中;它优先于包中创建的那个。

如果对此有任何士气......如果你的功能没有达到预期的效果。检查您是否正在调用正确的功能。

© www.soinside.com 2019 - 2024. All rights reserved.