2016-08-14 70 views

回答

7

Dir::glob支持单个字符通配符(即?)。根据您的示例,您可以使用?找到给定目录中的相应文件,然后将其删除。

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

工作得很好,非常感谢^^ –

+0

...如果单个字符的通配符不够用,使用'*'返回所有文件并在'each'之前插入'select'。即使使用File.join Dir.glob(File.join(File.dirname(__ FILE__),'./tmp/*。png'))也可以运行 –

+0

。 –

1

删除带通配符的文件。

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

中选择正则表达式来抓住你想要的文件。