README

Path: README
Last Update: Sun Dec 05 22:37:40 +0000 2010

Description

   A Ruby interface for getting file system information.

Prerequisites

MS Windows

  • windows-pr, 0.9.8 or later.

Installation

   rake test (optional)
   rake install (non-gem) OR rake install_gem (gem)

Synopsis

   require 'sys/filesystem'
   include Sys

   # Display information about a particular filesystem.
   p Filesystem.stat('/')

   # Sample output

   #<Sys::Filesystem::Stat:0x517440
      @base_type = "ufs",
      @flags = 4,
      @files_available = 3817457,
      @block_size = 8192,
      @blocks_available = 19957633,
      @blocks = 34349612,
      @name_max = 255,
      @path = "/",
      @filesystem_id = 35651592,
      @files = 4135040,
      @fragment_size = 1024,
      @files_free = 3817457,
      @blocks_free = 20301129
   >

   # Describe all mount points on the system
   Filesystem.mounts{ |mount| p mount }

   # Find the mount point of any particular file
   puts Filesystem.mount_point('/home/djberge/some_file.txt') => '/home'

Notes

MS Windows

   This is a pure Ruby implementation using the windows-pr library, which in
   turn wraps native Windows functions.

UNIX

   This is a C extension that wraps statvfs, etc.

Sample code

   Run 'rake example' if you want to see a basic sample run. The actual code
   is 'example_stat.rb' in the 'examples' directory. Modify it as you see fit.

Known Bugs

   None that I'm aware of.  Please report bugs on the project page at
   http://www.rubyforge.org/projects/sysutils.

Future Plans

   Suggestions welcome.

Acknowledgements

   Mike Hall, for ideas and code that I borrowed from his 'filesystem'
   library.

   Park Heesob, for implementation and API ideas for the MS Windows version.

   Nobuyoshi Miyokawa, for adding FreeBSD and OS X support.

License

   Artistic 2.0

Copyright

   (C) 2003-2009 Daniel J. Berger
   All Rights Reserved

Warranty

   This library is provided "as is" and without any express or
   implied warranties, including, without limitation, the implied
   warranties of merchantability and fitness for a particular purpose.

Author

   Daniel J. Berger

[Validate]