当我关闭gWidgets界面时,我的脚本会生成很多小的PNG文件,我想删除它们。我以为我可以使用如何使用shell()命令从Windows文件夹中删除文件
shell("del *.png")
但无论在剧本,也没有在交互模式R(2.15.2),这已经在所有(甚至不是一个错误或警告)的任何效果做到这一点在Windows中。可能我做错了什么,但是到目前为止我还找不到什么。
有人有想法给我吗?
当我关闭gWidgets界面时,我的脚本会生成很多小的PNG文件,我想删除它们。我以为我可以使用如何使用shell()命令从Windows文件夹中删除文件
shell("del *.png")
但无论在剧本,也没有在交互模式R(2.15.2),这已经在所有(甚至不是一个错误或警告)的任何效果做到这一点在Windows中。可能我做错了什么,但是到目前为止我还找不到什么。
有人有想法给我吗?
我刚刚测试过你的命令 - Windows XP上R的相同版本 - 它的工作原理与你所期望的完全一样。如果这个命令不适合你,我强烈怀疑R的工作目录可能与你有你的.png文件的目录不同。
你可以尝试:
shell('dir *.png')
...验证.png文件,实际上,在当前的工作目录试图删除它们之前。如果它们不存在,你会得到报告:
File Not Found
Warning messages:
1: running command 'C:\WINDOWS\system32\cmd.exe /c dir *.png' had status 1
2: In shell("dir *.png") : 'dir *.png' execution failed with error code 1
此外,如果你运行del
命令一次,所以有剩余的目录中没有.png文件,同时运行的第二次命令你应该得到的错误信息如下所示:
> shell("del *.png")
Could Not Find C:\usr\sjl\dev\test\R\*.png
我的坏!我认为这是理所当然的(因此没有提到)该命令也适用于子目录 - 我的实际命令是“del out/*。png”。在Linux中,它可以工作:'system('rm out/*。png')'... – vaettchen 2013-02-15 07:06:52
你可能要考虑使用'unlink'或'file.remove' – James 2013-02-15 08:48:19