[Ruby笔记]8. Ruby Rakefile rake 删除文件 确认

来源:互联网 发布:2017淘宝双十一攻略 编辑:程序博客网 时间:2024/06/07 03:26

file

  • 当前工作目录下,创建一个没有任何后缀名的Rakefile文件,当前目录结构如下:
PS C:\Users\Administrator\RubyCode> ls    目录: C:\Users\Administrator\RubyCodeMode                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\tmpMode                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文件的代码如下:

    1. desc后面的是关于该文件的描述,这里是一个删除文件夹下内容的Rakefile
    2. namespace 后面的是 admin
    3. task 后面的是clean_tmp
    4. 最终在命令行中使用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  endend
  • 使用rake admin:clean_tmp 命令就可以跑上面的Rakefile文件

    接受到y就删除文件,
    接受到q就退出操作;

PS C:\Users\Administrator\RubyCode> rake admin:clean_tmpDelete ./tmp/新建文本文档 - 副本 (2).txt? yDelete ./tmp/新建文本文档 - 副本 (3).txt? yDelete ./tmp/新建文本文档 - 副本 (4).txt? yDelete ./tmp/新建文本文档 - 副本 (5).txt? yDelete ./tmp/新建文本文档 - 副本 (6).txt? qPS C:\Users\Administrator\RubyCode> ls tmp    目录: C:\Users\Administrator\RubyCode\tmpMode                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
0 0
原创粉丝点击