我有如下的R代码。下面的代码位于名为“iot.R”的文件中。我在Linux中执行它。
我想将变量'fileinformation'的内容打印到file=fileConn提到的文件。。。
我原以为第三行可以解决这个问题,但它没有给出所需的输出:(

   fileinformation = system(paste("file", filenames[1]))
    #print(fileinformation)
    cat(print(fileinformation),"\r\n","\r\n", file=fileConn)

当我运行这个文件时,我会得到低于结果的结果。它会打印到我的屏幕上,而不是写入文件:(
> source('iot.R')
CH7Data_20130401T135010.csv: ASCII text, with CRLF line terminators
[1] 0

--------------------更新1
我也试过服从命令,但没有得到预期的结果
cat(capture.output(fileinformation),"\r\n","\r\n", file=fileConn)

最佳答案

您需要在对intern的调用中将TRUE参数设置为system。例如:

    fileinformation<-system("file cinzia_2.gif",intern=TRUE)
    fileinformation
    #[1] "cinzia_2.gif: GIF image data, version 89a, 640 x 640"

当然,我在电脑上尝试了一个文件,将intern设置为TRUE时,system的返回值将成为命令的控制台输出。然后,当您调用cat时,不需要将fileinformation括在print中,但是一个简单的cat(fileinformation,"\r\n","\r\n", file=fileConn)就足够了。

关于linux - linux-在R中运行系统命令,然后将输出写入文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26149032/

10-11 22:42
查看更多