【发布时间】:2017-07-25 05:26:22
【问题描述】:
运行以下 R 代码
system("sleep 10 &>> test.log")
在 R 3.3.3 下,它正确睡眠 10 秒,但在 R 3.4.1 下,它立即退出,看起来像 sleep 10 & >> test.log。
这是一个错误吗,因为我在https://cran.r-project.org/doc/manuals/r-release/NEWS.html 上没有发现从 R 3.3 到 3.4 对 system() 所做的任何更改?
问题已在"&>>" in sh behaves differently in Ubuntu 16.04.2 and Fedora 24解决
【问题讨论】:
-
嗯。如果您通过
&将sleep发送到后台,它不应该立即返回吗? -
sleep 10 &应该意味着发送到后台,但&>>应该意味着将 stdout 和 stderr 直接发送到文件,至少它们在终端和以前的 R 版本中工作,但在 R 3.4 中完全相同的命令行为不同,并且与终端中的行为不一致。 -
那么,也许把它带到 r-devel 那里?
-
是的,认为这是一个导致奇怪问题的错误,例如二进制写入文件并成功“退出”但 file.exists 找不到该文件...
-
我看到bugs.r-project.org/bugzilla3没有开放注册,我应该直接发邮件给R核心团队
?