On Mon, 13 Aug 2007 07:16:49 +0900, Sfdesigner Sfdesigner wrote:

> Currently I'm using this code to output a list of files to a .rhtml
> page:
> 
> <%
> Dir.foreach("/") do |file|
>   next if File.fnmatch('*.*', file)
>   puts '' + file + ''
> end
> %>
> 
> This removes files from the list output such as 'photo.jpg'.
> 
> But it leaves the files with names like '.htaccess', ',' and '..'.
> 
> I could create more of the 'next' statements explicitly for those file
> and directory names but wondering if there's a more elegant way to say
> don't output files with a '.' in their names.

Under UNIX, a * never matches a . at the beginning of a filename, and *.* 
also never matches this.

add another rule
  next if File.fnmatch('.*',file)
and you should be fine.

-- 
Ken Bloom. PhD candidate. Linguistic Cognition Laboratory.
Department of Computer Science. Illinois Institute of Technology.
http://www.iit.edu/~kbloom1/