我想编写一个脚本,对命令行中指定的某些文件执行一些操作,但我希望用户能够调用
fooscript *
即使*扩展为包含一些目录名
我知道我可以使用ARGF来处理文件
ARGF.each do |f|
puts f
end
但是这给了我一个目录的错误。我想跳过目录,或者特别处理它们。实现这一目标最常用的方法是Ruby?
答案 0 :(得分:2)
您可以在阅读ARGV
之前从ARGF
过滤它们:
ARGV.reject! {|f| File.directory? f }
# Now there are no dirs in ARGF...
ARGF.each do |l|
#... etc.