ruby - 删除名称与模式匹配的所有文件

ruby - delete all files with names matching a pattern

我有多个文件(在一个包含数千个文件的文件夹中),例如:

...
page_bonus.txt
page_code1.txt
page_code2.txt
page_text1.txt
page_text2.txt
page_text3.txt
...

如何删除所有 page_code* 文件?

注意:我不想使用 FileUtils 或 shell

Dir::glob 支持单字符通配符(即 ?)。根据您的示例,您可以使用 ? 在给定目录中找到适当的文件,然后删除它们。

Dir.glob('/home/your_username/Documents/page_code?.txt').each { |file| File.delete(file)}

删除带通配符的文件。

Dir.glob("/tmp/files/*").select{ |file| /MY STRING/.match file }.each { |file| File.delete(file)}

select里面的正则表达式用来抓取你想要的文件