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

本文介绍了如何在Ruby中使用Rakefile进行文件管理,特别是删除文件和确认操作。通过创建无后缀名的文件和包含多个文件的文件夹,展示了一个名为`rake admin:clean_tmp`的任务,该任务用于删除指定文件夹内容。执行时,用户可以选择'y'删除或'q'退出。参考书籍《The Well-Grounded Rubyist, Second Edition》进一步了解Rake的使用。" 90209051,8566956,深度解析:Python与dlib实现图像识别,"['图像识别', 'Python编程', '机器学习', '深度学习', '计算机视觉', 'dlib']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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文件的代码如下:

    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

  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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值