file
- 当前工作目录下,创建一个没有任何后缀名的
Rakefile
文件,当前目录结构如下:
PS C:\Users\Administrator\RubyCode> ls
目录: C:\Users\Administrator\RubyCode
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 2016/5/21 0:14 tmp
-a--- 2016/5/21 0:13 331 Rakefile
- 然后再在当前目录下创建一个
tmp
文件夹,tmp
文件夹中任意创建若干文件:
PS C:\Users\Administrator\RubyCode> ls tmp
目录: C:\Users\Administrator\RubyCode\tmp
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 2016/5/21 0:14 0 新建文本文档 - 副本 (2).txt
-a--- 2016/5/21 0:14 0 新建文本文档 - 副本 (3).txt
-a--- 2016/5/21 0:14 0 新建文本文档 - 副本 (4).txt
-a--- 2016/5/21 0:14 0 新建文本文档 - 副本 (5).txt
-a--- 2016/5/21 0:14 0 新建文本文档 - 副本 (6).txt
-a--- 2016/5/21 0:14 0 新建文本文档 - 副本 (7).txt
-a--- 2016/5/21 0:14 0 新建文本文档 - 副本 (8).txt
-a--- 2016/5/21 0:14 0 新建文本文档 - 副本 (9).txt
-a--- 2016/5/21 0:14 0 新建文本文档 - 副本.txt
-a--- 2016/5/21 0:14 0 新建文本文档.txt
rake admin:clean_tmp
Rakefile
文件的代码如下:desc
后面的是关于该文件的描述,这里是一个删除文件夹下内容的Rakefile
namespace
后面的是admin
task
后面的是clean_tmp
- 最终在命令行中使用
rake admin:clean_tmp
来跑
namespace :admin do
desc "Interactively delete all files in /tmp"
task :clean_tmp do
# task here
Dir["./tmp/*"].each do |f|
next unless File.file?(f)
print "Delete #{f}? "
answer = $stdin.gets
case answer
when /^y/
File.unlink(f)
when /^q/
break
end
end
end
end
使用
rake admin:clean_tmp
命令就可以跑上面的Rakefile
文件接受到y就删除文件,
接受到q就退出操作;
PS C:\Users\Administrator\RubyCode> rake admin:clean_tmp
Delete ./tmp/新建文本文档 - 副本 (2).txt? y
Delete ./tmp/新建文本文档 - 副本 (3).txt? y
Delete ./tmp/新建文本文档 - 副本 (4).txt? y
Delete ./tmp/新建文本文档 - 副本 (5).txt? y
Delete ./tmp/新建文本文档 - 副本 (6).txt? q
PS C:\Users\Administrator\RubyCode> ls tmp
目录: C:\Users\Administrator\RubyCode\tmp
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 2016/5/21 0:14 0 新建文本文档 - 副本 (6).txt
-a--- 2016/5/21 0:14 0 新建文本文档 - 副本 (7).txt
-a--- 2016/5/21 0:14 0 新建文本文档 - 副本 (8).txt
-a--- 2016/5/21 0:14 0 新建文本文档 - 副本 (9).txt
-a--- 2016/5/21 0:14 0 新建文本文档 - 副本.txt
-a--- 2016/5/21 0:14 0 新建文本文档.txt
reference
《The Well-Grounded Rubyist, Second Edition》
(https://www.manning.com/books/the-well-grounded-rubyist-second-edition)
1.4.4. The rake task-management utility
∧_∧
( ・∀・)
ノ つ
(_( ノ
しし
http://emoji.vis.ne.jp/dandy_sakano23.htm