2011-12-16 48 views

回答

131

Ruby有* nix中rm -rf相当于FileUtils模块,你可以用它来删除文件和非空文件夹/目录中:

FileUtils.rm_rf('dir/to/remove') 

为了保持目录本身,只删除其内容:

FileUtils.rm_rf(Dir.glob('dir/to/remove/*')) 

FileUtils.rm_rf(Dir['dir/to/remove/*'])  # shorter version of above 
+0

这将删除该文件夹本身以及 - 反正是有有只删除文件夹的内容,但保持空文件夹? – Jacob

+0

找到它..'FileUtils.mkdir'。谢谢 – Jacob

+17

仅限文件夹内容:FileUtils.rm_rf(Dir.glob('dir/*'))(最后请注意星号) – draganstankovic

2

你可以这样运行使用倾斜的单引号(旁边的波浪线)任意命令:

`rm -fr public/cache/*` 

这可能比你想要的更依赖于平台,但它开启了很多可能性。

+7

这就是所谓的反引号。 – IIllIIll

0

这里已经有很好的答案了。您可能也有兴趣知道,滑轨5具有刃任务来完成内置:

rake tmp:cache:clear # Clear cache files from tmp/ 
相关问题